diff --git a/etc/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json b/etc/api/acceleratedmobilepageurl/v1/acceleratedmobilepageurl-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/adexchangebuyer/v1.2/adexchangebuyer-api.json b/etc/api/adexchangebuyer/v1.2/adexchangebuyer-api.json index 88a94ca298..51c49fbf1a 100644 --- a/etc/api/adexchangebuyer/v1.2/adexchangebuyer-api.json +++ b/etc/api/adexchangebuyer/v1.2/adexchangebuyer-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/XHuj955Esjr7rkdIbc7SdaIn1Og\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/P8rJ3iX9MbkJGAvsY3P6mePkFI8\"", "discoveryVersion": "v1", "id": "adexchangebuyer:v1.2", "name": "adexchangebuyer", "canonicalName": "Ad Exchange Buyer", "version": "v1.2", - "revision": "20160405", + "revision": "20160831", "title": "Ad Exchange Buyer API", "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", "ownerDomain": "google.com", diff --git a/etc/api/adexchangebuyer/v1.3/adexchangebuyer-api.json b/etc/api/adexchangebuyer/v1.3/adexchangebuyer-api.json index f9f2500d87..c99c0bc9a0 100644 --- a/etc/api/adexchangebuyer/v1.3/adexchangebuyer-api.json +++ b/etc/api/adexchangebuyer/v1.3/adexchangebuyer-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7OomBdgZ3z0QMRgoMqlMLp6fRlA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/bx00dhCeT3Y8291uk8ElnLRZiBs\"", "discoveryVersion": "v1", "id": "adexchangebuyer:v1.3", "name": "adexchangebuyer", "canonicalName": "Ad Exchange Buyer", "version": "v1.3", - "revision": "20160405", + "revision": "20160831", "title": "Ad Exchange Buyer API", "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", "ownerDomain": "google.com", diff --git a/etc/api/adexchangebuyer/v1.4/adexchangebuyer-api.json b/etc/api/adexchangebuyer/v1.4/adexchangebuyer-api.json index b46cfb0aae..d981dcea12 100644 --- a/etc/api/adexchangebuyer/v1.4/adexchangebuyer-api.json +++ b/etc/api/adexchangebuyer/v1.4/adexchangebuyer-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/9WukAPmA5ytP1PY2pa6ISyUv5a0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/TVMTzMzY2Oz9Cw6N35WlTiR7OUE\"", "discoveryVersion": "v1", "id": "adexchangebuyer:v1.4", "name": "adexchangebuyer", "canonicalName": "Ad Exchange Buyer", "version": "v1.4", - "revision": "20160405", + "revision": "20160831", "title": "Ad Exchange Buyer API", "description": "Accesses your bidding-account information, submits creatives for validation, finds available direct deals, and retrieves performance reports.", "ownerDomain": "google.com", @@ -345,7 +345,8 @@ } }, "webPropertyCode": { - "type": "string" + "type": "string", + "description": "Web property id of the seller creating these orders" } } }, @@ -381,6 +382,10 @@ ] } }, + "adChoicesDestinationUrl": { + "type": "string", + "description": "The link to the Ad Preferences page. This is only supported for native ads." + }, "advertiserId": { "type": "array", "description": "Detected advertiser id, if any. Read-only. This field should not be set in requests.", @@ -443,6 +448,41 @@ "items": { "type": "object", "properties": { + "contexts": { + "type": "array", + "description": "All known serving contexts containing serving status information.", + "items": { + "type": "object", + "properties": { + "auctionType": { + "type": "array", + "description": "Only set when contextType=AUCTION_TYPE. Represents the auction types this correction applies to.", + "items": { + "type": "string" + } + }, + "contextType": { + "type": "string", + "description": "The type of context (e.g., location, platform, auction type, SSL-ness)." + }, + "geoCriteriaId": { + "type": "array", + "description": "Only set when contextType=LOCATION. Represents the geo criterias this correction applies to.", + "items": { + "type": "integer", + "format": "int32" + } + }, + "platform": { + "type": "array", + "description": "Only set when contextType=PLATFORM. Represents the platforms this correction applies to.", + "items": { + "type": "string" + } + } + } + } + }, "details": { "type": "array", "description": "Additional details about the correction.", @@ -461,6 +501,13 @@ "type": "string", "description": "Top-level deals status. Read-only. This field should not be set in requests. If disapproved, an entry for auctionType=DIRECT_DEALS (or ALL) in servingRestrictions will also exist. Note that this may be nuanced with other contextual restrictions, in which case it may be preferable to read from servingRestrictions directly." }, + "detectedDomains": { + "type": "array", + "description": "Detected domains for this creative. Read-only. This field should not be set in requests.", + "items": { + "type": "string" + } + }, "filteringReasons": { "type": "object", "description": "The filtering reasons for the creative. Read-only. This field should not be set in requests.", @@ -512,6 +559,13 @@ "description": "Resource type.", "default": "adexchangebuyer#creative" }, + "languages": { + "type": "array", + "description": "Detected languages for this creative. Read-only. This field should not be set in requests.", + "items": { + "type": "string" + } + }, "nativeAd": { "type": "object", "description": "If nativeAd is set, HTMLSnippet and videoURL should not be set.", @@ -769,13 +823,23 @@ "DealServingMetadataDealPauseStatus": { "id": "DealServingMetadataDealPauseStatus", "type": "object", - "description": "Tracks which parties (if any) have paused a deal. The deal is considered paused if has_buyer_paused || has_seller_paused.", + "description": "Tracks which parties (if any) have paused a deal. The deal is considered paused if has_buyer_paused || has_seller_paused. Each of the has_buyer_paused or the has_seller_paused bits can be set independently.", "properties": { + "buyerPauseReason": { + "type": "string" + }, + "firstPausedBy": { + "type": "string", + "description": "If the deal is paused, records which party paused the deal first." + }, "hasBuyerPaused": { "type": "boolean" }, "hasSellerPaused": { "type": "boolean" + }, + "sellerPauseReason": { + "type": "string" } } }, @@ -787,6 +851,10 @@ "type": "string", "description": "Visibilty of the URL in bid requests." }, + "crossListedExternalDealIdType": { + "type": "string", + "description": "Indicates that this ExternalDealId exists under at least two different AdxInventoryDeals. Currently, the only case that the same ExternalDealId will exist is programmatic cross sell case." + }, "description": { "type": "string", "description": "Description for the proposed terms of the deal." @@ -812,6 +880,10 @@ "$ref": "DealTermsNonGuaranteedFixedPriceTerms", "description": "The terms for non-guaranteed fixed price deals." }, + "rubiconNonGuaranteedTerms": { + "$ref": "DealTermsRubiconNonGuaranteedTerms", + "description": "The terms for rubicon non-guaranteed deals." + }, "sellerTimeZone": { "type": "string", "description": "For deals with Cost Per Day billing, defines the timezone used to mark the boundaries of a day (buyer-readonly)" @@ -822,6 +894,10 @@ "id": "DealTermsGuaranteedFixedPriceTerms", "type": "object", "properties": { + "billingInfo": { + "$ref": "DealTermsGuaranteedFixedPriceTermsBillingInfo", + "description": "External billing info for this Deal. This field is relevant when external billing info such as price has a different currency code than DFP/AdX." + }, "fixedPrices": { "type": "array", "description": "Fixed price for the specified buyer.", @@ -836,8 +912,38 @@ }, "guaranteedLooks": { "type": "string", - "description": "Count of guaranteed looks. Required for deal, optional for product.", + "description": "Count of guaranteed looks. Required for deal, optional for product. For CPD deals, buyer changes to guaranteed_looks will be ignored.", "format": "int64" + }, + "minimumDailyLooks": { + "type": "string", + "description": "Count of minimum daily looks for a CPD deal. For CPD deals, buyer should negotiate on this field instead of guaranteed_looks.", + "format": "int64" + } + } + }, + "DealTermsGuaranteedFixedPriceTermsBillingInfo": { + "id": "DealTermsGuaranteedFixedPriceTermsBillingInfo", + "type": "object", + "properties": { + "currencyConversionTimeMs": { + "type": "string", + "description": "The timestamp (in ms since epoch) when the original reservation price for the deal was first converted to DFP currency. This is used to convert the contracted price into advertiser's currency without discrepancy.", + "format": "int64" + }, + "dfpLineItemId": { + "type": "string", + "description": "The DFP line item id associated with this deal. For features like CPD, buyers can retrieve the DFP line item for billing reconciliation.", + "format": "int64" + }, + "originalContractedQuantity": { + "type": "string", + "description": "The original contracted quantity (# impressions) for this deal. To ensure delivery, sometimes the publisher will book the deal with a impression buffer, such that guaranteed_looks is greater than the contracted quantity. However clients are billed using the original contracted quantity.", + "format": "int64" + }, + "price": { + "$ref": "Price", + "description": "The original reservation price for the deal, if the currency code is different from the one used in negotiation." } } }, @@ -871,6 +977,20 @@ } } }, + "DealTermsRubiconNonGuaranteedTerms": { + "id": "DealTermsRubiconNonGuaranteedTerms", + "type": "object", + "properties": { + "priorityPrice": { + "$ref": "Price", + "description": "Optional price for Rubicon priority access in the auction." + }, + "standardPrice": { + "$ref": "Price", + "description": "Optional price for Rubicon standard access in the auction." + } + } + }, "DeleteOrderDealsRequest": { "id": "DeleteOrderDealsRequest", "type": "object", @@ -888,7 +1008,8 @@ "format": "int64" }, "updateAction": { - "type": "string" + "type": "string", + "description": "Indicates an optional action to take on the proposal" } } }, @@ -973,7 +1094,12 @@ }, "name": { "type": "string", - "description": "Name of the dimension mainly for debugging purposes." + "description": "Name of the dimension mainly for debugging purposes, except for the case of CREATIVE_SIZE. For CREATIVE_SIZE, strings are used instead of ids." + }, + "percentage": { + "type": "integer", + "description": "Percent of total impressions for a dimension type. e.g. {dimension_type: 'GENDER', [{dimension_value: {id: 1, name: 'MALE', percentage: 60}}]} Gender MALE is 60% of all impressions which have gender.", + "format": "int32" } } }, @@ -1053,7 +1179,7 @@ "properties": { "notes": { "type": "array", - "description": "The list of matching notes.", + "description": "The list of matching notes. The notes for a proposal are ordered from oldest to newest. If the notes span multiple proposals, they will be grouped by proposal, with the notes for the most recently modified proposal appearing first.", "items": { "$ref": "MarketplaceNote" } @@ -1110,7 +1236,7 @@ }, "dealId": { "type": "string", - "description": "A unique deal=id for the deal (readonly)." + "description": "A unique deal-id for the deal (readonly)." }, "dealServingMetadata": { "$ref": "DealServingMetadata", @@ -1670,6 +1796,11 @@ "type": "string", "description": "The currency code for the price." }, + "expectedCpmMicros": { + "type": "number", + "description": "In case of CPD deals, the expected CPM in micros.", + "format": "double" + }, "pricingType": { "type": "string", "description": "The pricing type for the deal/product." @@ -1681,6 +1812,10 @@ "type": "object", "description": "Used to specify pricing rules for buyers/advertisers. Each PricePerBuyer in an product can become [0,1] deals. To check if there is a PricePerBuyer for a particular buyer or buyer/advertiser pair, we look for the most specific matching rule - we first look for a rule matching the buyer and advertiser, next a rule with the buyer but an empty advertiser list, and otherwise look for a matching rule where no buyer is set.", "properties": { + "auctionTier": { + "type": "string", + "description": "Optional access type for this buyer." + }, "buyer": { "$ref": "Buyer", "description": "The buyer who will pay this price. If unset, all buyers can pay this price (if the advertisers match, and there's no more specific rule matching the buyer)." @@ -1780,6 +1915,10 @@ "type": "string", "description": "Id of the publisher profile for a given seller. A (seller.account_id, publisher_profile_id) pair uniquely identifies a publisher profile. Buyers can call the PublisherProfiles::List endpoint to get a list of publisher profiles for a given seller." }, + "publisherProvidedForecast": { + "$ref": "PublisherProvidedForecast", + "description": "Publisher self-provided forecast information." + }, "revisionNumber": { "type": "string", "description": "The revision number of the product. (readonly)", @@ -1829,7 +1968,7 @@ }, "buyerContacts": { "type": "array", - "description": "Optional contact information fort the buyer. (seller-readonly)", + "description": "Optional contact information of the buyer. (seller-readonly)", "items": { "$ref": "ContactInformation" } @@ -1840,7 +1979,7 @@ }, "hasBuyerSignedOff": { "type": "boolean", - "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)" + "description": "When an proposal is in an accepted state, indicates whether the buyer has signed off. Once both sides have signed off on a deal, the proposal can be finalized by the seller. (seller-readonly)" }, "hasSellerSignedOff": { "type": "boolean", @@ -1874,9 +2013,6 @@ "type": "string", "description": "The role of the last user that either updated the proposal or left a comment. (readonly)" }, - "lastUpdaterRole": { - "type": "string" - }, "name": { "type": "string", "description": "The name for the proposal (updatable)" @@ -1917,7 +2053,7 @@ }, "sellerContacts": { "type": "array", - "description": "Optional contact information for the seller (buyer-readonly).", + "description": "Optional contact information of the seller (buyer-readonly).", "items": { "$ref": "ContactInformation" } @@ -1941,7 +2077,7 @@ "description": "A pitch statement for the buyer" }, "directContact": { - "$ref": "ContactInformation", + "type": "string", "description": "Direct contact for the publisher profile." }, "exchange": { @@ -1986,7 +2122,7 @@ "format": "int32" }, "programmaticContact": { - "$ref": "ContactInformation", + "type": "string", "description": "Programmatic contact for the publisher profile." }, "publisherDomains": { @@ -2132,6 +2268,10 @@ "size": { "$ref": "TargetingValueSize", "description": "For regular or video creative size type, specifies the size of the creative." + }, + "skippableAdType": { + "type": "string", + "description": "The skippable ad type for video size." } } }, @@ -2260,6 +2400,11 @@ "httpMethod": "PATCH", "description": "Updates an existing account. This method supports patch semantics.", "parameters": { + "confirmUnsafeAccountChange": { + "type": "boolean", + "description": "Confirmation for erasing bidder and cookie matching urls.", + "location": "query" + }, "id": { "type": "integer", "description": "The account id", @@ -2287,6 +2432,11 @@ "httpMethod": "PUT", "description": "Updates an existing account.", "parameters": { + "confirmUnsafeAccountChange": { + "type": "boolean", + "description": "Confirmation for erasing bidder and cookie matching urls.", + "location": "query" + }, "id": { "type": "integer", "description": "The account id", @@ -2712,9 +2862,14 @@ "httpMethod": "GET", "description": "List all the deals for a given proposal", "parameters": { + "pqlQuery": { + "type": "string", + "description": "Query string to retrieve specific deals.", + "location": "query" + }, "proposalId": { "type": "string", - "description": "The proposalId to get deals for.", + "description": "The proposalId to get deals for. To search across all proposals specify order_id = '-' as part of the URL.", "required": true, "location": "path" } @@ -2791,9 +2946,14 @@ "httpMethod": "GET", "description": "Get all the notes associated with a proposal", "parameters": { + "pqlQuery": { + "type": "string", + "description": "Query string to retrieve specific notes. To search the text contents of notes, please use syntax like \"WHERE note.note = \"foo\" or \"WHERE note.note LIKE \"%bar%\"", + "location": "query" + }, "proposalId": { "type": "string", - "description": "The proposalId to get notes for.", + "description": "The proposalId to get notes for. To search across all proposals specify order_id = '-' as part of the URL.", "required": true, "location": "path" } @@ -3185,12 +3345,13 @@ }, "updateAction": { "type": "string", - "description": "The proposed action to take on the proposal.", + "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", "required": true, "enum": [ "accept", "cancel", "propose", + "proposeAndAccept", "unknownAction", "updateFinalized" ], @@ -3199,6 +3360,7 @@ "", "", "", + "", "" ], "location": "path" @@ -3279,12 +3441,13 @@ }, "updateAction": { "type": "string", - "description": "The proposed action to take on the proposal.", + "description": "The proposed action to take on the proposal. This field is required and it must be set when updating a proposal.", "required": true, "enum": [ "accept", "cancel", "propose", + "proposeAndAccept", "unknownAction", "updateFinalized" ], @@ -3293,6 +3456,7 @@ "", "", "", + "", "" ], "location": "path" diff --git a/etc/api/adexchangeseller/v1.1/adexchangeseller-api.json b/etc/api/adexchangeseller/v1.1/adexchangeseller-api.json index 2aafbb1ded..0088264414 100644 --- a/etc/api/adexchangeseller/v1.1/adexchangeseller-api.json +++ b/etc/api/adexchangeseller/v1.1/adexchangeseller-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/yGVcPLwiZSQ-IqA-VzRt5HRabDM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Dz_LMqDcbtnyBd4CwnrsbswCFU4\"", "discoveryVersion": "v1", "id": "adexchangeseller:v1.1", "name": "adexchangeseller", "canonicalName": "Ad Exchange Seller", "version": "v1.1", - "revision": "20151127", + "revision": "20160805", "title": "Ad Exchange Seller API", - "description": "Gives Ad Exchange seller users access to their inventory and the ability to generate reports", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/adexchangeseller/v1/adexchangeseller-api.json b/etc/api/adexchangeseller/v1/adexchangeseller-api.json index 92a960f6bc..71bb30c136 100644 --- a/etc/api/adexchangeseller/v1/adexchangeseller-api.json +++ b/etc/api/adexchangeseller/v1/adexchangeseller-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/GTUyFqTp03AxvtXGSPwa14CBOeE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/EberIAMM9RntL16aqUh0FmyQxWY\"", "discoveryVersion": "v1", "id": "adexchangeseller:v1", "name": "adexchangeseller", "canonicalName": "Ad Exchange Seller", "version": "v1", - "revision": "20151127", + "revision": "20160805", "title": "Ad Exchange Seller API", - "description": "Gives Ad Exchange seller users access to their inventory and the ability to generate reports", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/adexchangeseller/v2.0/adexchangeseller-api.json b/etc/api/adexchangeseller/v2.0/adexchangeseller-api.json index e90671af4b..b1315441a8 100644 --- a/etc/api/adexchangeseller/v2.0/adexchangeseller-api.json +++ b/etc/api/adexchangeseller/v2.0/adexchangeseller-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/rTQPwJ9q2nhaUPuYhDxmQRI6s5g\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/1XDufO4826VKTkrV2WU9EmKApiQ\"", "discoveryVersion": "v1", "id": "adexchangeseller:v2.0", "name": "adexchangeseller", "canonicalName": "Ad Exchange Seller", "version": "v2.0", - "revision": "20151127", + "revision": "20160805", "title": "Ad Exchange Seller API", - "description": "Gives Ad Exchange seller users access to their inventory and the ability to generate reports", + "description": "Accesses the inventory of Ad Exchange seller users and generates reports.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/admin/datatransfer_v1/admin-api.json b/etc/api/admin/datatransfer_v1/admin-api.json index f76cc2feaf..004935775c 100644 --- a/etc/api/admin/datatransfer_v1/admin-api.json +++ b/etc/api/admin/datatransfer_v1/admin-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/YLr8KxlFkw8ar-xZYzcCGhmF9B0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/YLr8KxlFkw8ar-xZYzcCGhmF9B0\"", "discoveryVersion": "v1", "id": "admin:datatransfer_v1", "name": "admin", diff --git a/etc/api/admin/directory_v1/admin-api.json b/etc/api/admin/directory_v1/admin-api.json index fbe0776453..e9960d947f 100644 --- a/etc/api/admin/directory_v1/admin-api.json +++ b/etc/api/admin/directory_v1/admin-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Bj5fQ_zHjihg0GNq6kcI72CKzds\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/tVkq2fforoBT9yvJW6dzQX6ja6Q\"", "discoveryVersion": "v1", "id": "admin:directory_v1", "name": "admin", "canonicalName": "directory", "version": "directory_v1", - "revision": "20160323", + "revision": "20160824", "title": "Admin Directory API", "description": "The Admin SDK Directory API lets you view and manage enterprise resources such as users and groups, administrative notifications, security features, and more.", "ownerDomain": "google.com", @@ -193,7 +193,7 @@ "type": "array", "description": "List of alias objects.", "items": { - "$ref": "Alias" + "type": "any" } }, "etag": { @@ -890,6 +890,10 @@ "type": "string", "description": "Role of member" }, + "status": { + "type": "string", + "description": "Status of member (Immutable)" + }, "type": { "type": "string", "description": "Type of member (Immutable)" @@ -2682,7 +2686,7 @@ "id": "directory.customers.get", "path": "customers/{customerKey}", "httpMethod": "GET", - "description": "Retrives a customer.", + "description": "Retrieves a customer.", "parameters": { "customerKey": { "type": "string", @@ -2906,7 +2910,7 @@ "id": "directory.domains.get", "path": "customer/{customer}/domains/{domainName}", "httpMethod": "GET", - "description": "Retrives a domain of the customer.", + "description": "Retrieves a domain of the customer.", "parameters": { "customer": { "type": "string", diff --git a/etc/api/admin/reports_v1/admin-api.json b/etc/api/admin/reports_v1/admin-api.json index 44b74b30a5..4ba0fff311 100644 --- a/etc/api/admin/reports_v1/admin-api.json +++ b/etc/api/admin/reports_v1/admin-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/byz5VJzn0qUbAiSmE6GjI4kojVg\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/JOd2IF5OejEZFbpk9z7_VoeqW5U\"", "discoveryVersion": "v1", "id": "admin:reports_v1", "name": "admin", "canonicalName": "reports", "version": "reports_v1", - "revision": "20151113", + "revision": "20160704", "title": "Admin Reports API", - "description": "Allows the administrators of Google Apps customers to fetch reports about the usage, collaboration, security and risk for their users.", + "description": "Fetches reports for the administrators of Google Apps customers about the usage, collaboration, security, and risk for their users.", "ownerDomain": "google.com", "ownerName": "Google", "packagePath": "admin", @@ -464,7 +464,7 @@ "type": "string", "description": "Application name for which the events are to be retrieved.", "required": true, - "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)", + "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)", "location": "path" }, "customerId": { @@ -543,7 +543,7 @@ "type": "string", "description": "Application name for which the events are to be retrieved.", "required": true, - "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)", + "pattern": "(admin)|(calendar)|(drive)|(login)|(mobile)|(token)|(groups)|(saml)", "location": "path" }, "customerId": { diff --git a/etc/api/adsense/v1.2/adsense-api.json b/etc/api/adsense/v1.2/adsense-api.json index d50321f38b..e3f3435944 100644 --- a/etc/api/adsense/v1.2/adsense-api.json +++ b/etc/api/adsense/v1.2/adsense-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/LJDKT2Ga8SuCOV3aCbVYZ-8VPzY\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/qyOhevIrrg-Vp01NIDI7oCsfKDA\"", "discoveryVersion": "v1", "id": "adsense:v1.2", "name": "adsense", "canonicalName": "AdSense", "version": "v1.2", - "revision": "20160405", + "revision": "20160907", "title": "AdSense Management API", "description": "Accesses AdSense publishers' inventory and generates performance reports.", "ownerDomain": "google.com", diff --git a/etc/api/adsense/v1.3/adsense-api.json b/etc/api/adsense/v1.3/adsense-api.json index 98f1b7461d..659861b150 100644 --- a/etc/api/adsense/v1.3/adsense-api.json +++ b/etc/api/adsense/v1.3/adsense-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/1xMNid9XS36JD5TH8R14NGfkUqs\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/C00o7wucTJAcP39P-cEOrRc9pLA\"", "discoveryVersion": "v1", "id": "adsense:v1.3", "name": "adsense", "canonicalName": "AdSense", "version": "v1.3", - "revision": "20160405", + "revision": "20160907", "title": "AdSense Management API", "description": "Accesses AdSense publishers' inventory and generates performance reports.", "ownerDomain": "google.com", diff --git a/etc/api/adsense/v1.4/adsense-api.json b/etc/api/adsense/v1.4/adsense-api.json index 6155e40abd..9c47c4c644 100644 --- a/etc/api/adsense/v1.4/adsense-api.json +++ b/etc/api/adsense/v1.4/adsense-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/mTfrCyAXMjNrBAG-6jjjVEMJJ4M\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/mzAWTwgWWJnzBtwDU9h80pGL_MA\"", "discoveryVersion": "v1", "id": "adsense:v1.4", "name": "adsense", "canonicalName": "AdSense", "version": "v1.4", - "revision": "20160405", + "revision": "20160907", "title": "AdSense Management API", "description": "Accesses AdSense publishers' inventory and generates performance reports.", "ownerDomain": "google.com", diff --git a/etc/api/adsensehost/v4.1/adsensehost-api.json b/etc/api/adsensehost/v4.1/adsensehost-api.json index e9ed84caf6..bfc7a02158 100644 --- a/etc/api/adsensehost/v4.1/adsensehost-api.json +++ b/etc/api/adsensehost/v4.1/adsensehost-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/9VyrVB-oyRLagM9vor-DuzpZ4ac\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/1O6SL_KmRSdPQjZoTIixUZdD99Y\"", "discoveryVersion": "v1", "id": "adsensehost:v4.1", "name": "adsensehost", "canonicalName": "AdSense Host", "version": "v4.1", - "revision": "20160405", + "revision": "20160907", "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/etc/api/analytics/v2.4/analytics-api.json b/etc/api/analytics/v2.4/analytics-api.json index b5d85ec4f0..a6c9b8cf27 100644 --- a/etc/api/analytics/v2.4/analytics-api.json +++ b/etc/api/analytics/v2.4/analytics-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/ha01xiJ2F_tfXi994F2t-6KbS0Y\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/nDekPAYRSzRXXRFOQaI0Em-G4Rc\"", "discoveryVersion": "v1", "id": "analytics:v2.4", "name": "analytics", "version": "v2.4", - "revision": "20160308", + "revision": "20160805", "title": "Google Analytics API", "description": "Views and manages your Google Analytics data.", "ownerDomain": "google.com", diff --git a/etc/api/analytics/v3/analytics-api.json b/etc/api/analytics/v3/analytics-api.json index 047a2bf83e..9a6b746967 100644 --- a/etc/api/analytics/v3/analytics-api.json +++ b/etc/api/analytics/v3/analytics-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/y7JmUhB0GIMusVTZY-o1OGZ6DZQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/RVrwVyPQJLlTFI7LM0WsqSWaDpE\"", "discoveryVersion": "v1", "id": "analytics:v3", "name": "analytics", "version": "v3", - "revision": "20160308", + "revision": "20160805", "title": "Google Analytics API", "description": "Views and manages your Google Analytics data.", "ownerDomain": "google.com", @@ -2038,6 +2038,86 @@ } } }, + "IncludeConditions": { + "id": "IncludeConditions", + "type": "object", + "description": "JSON template for an Analytics Remarketing Include Conditions.", + "properties": { + "daysToLookBack": { + "type": "integer", + "description": "The look-back window lets you specify a time frame for evaluating the behavior that qualifies users for your audience. For example, if your filters include users from Central Asia, and Transactions Greater than 2, and you set the look-back window to 14 days, then any user from Central Asia whose cumulative transactions exceed 2 during the last 14 days is added to the audience.", + "format": "int32" + }, + "isSmartList": { + "type": "boolean", + "description": "Boolean indicating whether this segment is a smart list. https://support.google.com/analytics/answer/4628577" + }, + "kind": { + "type": "string", + "description": "Resource type for include conditions.", + "default": "analytics#includeConditions" + }, + "membershipDurationDays": { + "type": "integer", + "description": "Number of days a user remains in the audience. Use any integer from 1-540. In remarketing audiences for search ads, membership duration is truncated to 180 days.", + "format": "int32" + }, + "segment": { + "type": "string", + "description": "The segment condition that will cause a user to be added to an audience." + } + } + }, + "LinkedForeignAccount": { + "id": "LinkedForeignAccount", + "type": "object", + "description": "JSON template for an Analytics Remarketing Audience Foreign Link.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID to which this linked foreign account belongs." + }, + "eligibleForSearch": { + "type": "boolean", + "description": "Boolean indicating whether this is eligible for search.", + "readOnly": true + }, + "id": { + "type": "string", + "description": "Entity ad account link ID." + }, + "internalWebPropertyId": { + "type": "string", + "description": "Internal ID for the web property to which this linked foreign account belongs.", + "readOnly": true + }, + "kind": { + "type": "string", + "description": "Resource type for linked foreign account.", + "default": "analytics#linkedForeignAccount" + }, + "linkedAccountId": { + "type": "string", + "description": "The foreign account ID. For example the an AdWords `linkedAccountId` has the following format XXX-XXX-XXXX." + }, + "remarketingAudienceId": { + "type": "string", + "description": "Remarketing audience ID to which this linked foreign account belongs." + }, + "status": { + "type": "string", + "description": "The status of this foreign account link." + }, + "type": { + "type": "string", + "description": "The type of the foreign account. For example `ADWORDS_LINKS`." + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID of the form UA-XXXXX-YY to which this linked foreign account belongs." + } + } + }, "McfData": { "id": "McfData", "type": "object", @@ -2715,6 +2795,154 @@ } } }, + "RemarketingAudience": { + "id": "RemarketingAudience", + "type": "object", + "description": "JSON template for an Analytics remarketing audience.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID to which this remarketing audience belongs." + }, + "audienceDefinition": { + "type": "object", + "description": "The simple audience definition that will cause a user to be added to an audience.", + "properties": { + "includeConditions": { + "$ref": "IncludeConditions", + "description": "Defines the conditions to include users to the audience." + } + } + }, + "audienceType": { + "type": "string", + "description": "The type of audience, either SIMPLE or STATE_BASED." + }, + "created": { + "type": "string", + "description": "Time this remarketing audience was created.", + "format": "date-time", + "readOnly": true + }, + "description": { + "type": "string", + "description": "The description of this remarketing audience.", + "readOnly": true + }, + "id": { + "type": "string", + "description": "Remarketing Audience ID." + }, + "internalWebPropertyId": { + "type": "string", + "description": "Internal ID for the web property to which this remarketing audience belongs.", + "readOnly": true + }, + "kind": { + "type": "string", + "description": "Collection type.", + "default": "analytics#remarketingAudience" + }, + "linkedAdAccounts": { + "type": "array", + "description": "The linked ad accounts associated with this remarketing audience. A remarketing audience can have only one linkedAdAccount currently.", + "items": { + "$ref": "LinkedForeignAccount" + } + }, + "linkedViews": { + "type": "array", + "description": "The views (profiles) that this remarketing audience is linked to.", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "description": "The name of this remarketing audience." + }, + "stateBasedAudienceDefinition": { + "type": "object", + "description": "A state based audience definition that will cause a user to be added or removed from an audience.", + "properties": { + "excludeConditions": { + "type": "object", + "description": "Defines the conditions to exclude users from the audience.", + "properties": { + "exclusionDuration": { + "type": "string", + "description": "Whether to make the exclusion TEMPORARY or PERMANENT." + }, + "segment": { + "type": "string", + "description": "The segment condition that will cause a user to be removed from an audience." + } + } + }, + "includeConditions": { + "$ref": "IncludeConditions", + "description": "Defines the conditions to include users to the audience." + } + } + }, + "updated": { + "type": "string", + "description": "Time this remarketing audience was last modified.", + "format": "date-time", + "readOnly": true + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID of the form UA-XXXXX-YY to which this remarketing audience belongs." + } + } + }, + "RemarketingAudiences": { + "id": "RemarketingAudiences", + "type": "object", + "description": "A remarketing audience collection lists Analytics remarketing audiences to which the user has access. Each resource in the collection corresponds to a single Analytics remarketing audience.", + "properties": { + "items": { + "type": "array", + "description": "A list of remarketing audiences.", + "items": { + "$ref": "RemarketingAudience" + } + }, + "itemsPerPage": { + "type": "integer", + "description": "The maximum number of resources the response can contain, regardless of the actual number of resources returned. Its value ranges from 1 to 1000 with a value of 1000 by default, or otherwise specified by the max-results query parameter.", + "format": "int32" + }, + "kind": { + "type": "string", + "description": "Collection type.", + "default": "analytics#remarketingAudiences" + }, + "nextLink": { + "type": "string", + "description": "Link to next page for this remarketing audience collection." + }, + "previousLink": { + "type": "string", + "description": "Link to previous page for this view (profile) collection." + }, + "startIndex": { + "type": "integer", + "description": "The starting index of the resources, which is 1 by default or otherwise specified by the start-index query parameter.", + "format": "int32" + }, + "totalResults": { + "type": "integer", + "description": "The total number of results for the query, regardless of the number of results in the response.", + "format": "int32" + }, + "username": { + "type": "string", + "description": "Email ID of the authenticated user" + } + } + }, "Segment": { "id": "Segment", "type": "object", @@ -2843,7 +3071,7 @@ }, "downloadType": { "type": "string", - "description": "The type of download you need to use for the report data file.", + "description": "The type of download you need to use for the report data file. Possible values include `GOOGLE_DRIVE` and `GOOGLE_CLOUD_STORAGE`. If the value is `GOOGLE_DRIVE`, see the `driveDownloadDetails` field. If the value is `GOOGLE_CLOUD_STORAGE`, see the `cloudStorageDownloadDetails` field.", "readOnly": true }, "driveDownloadDetails": { @@ -5709,6 +5937,210 @@ } } }, + "remarketingAudience": { + "methods": { + "get": { + "id": "analytics.management.remarketingAudience.get", + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "httpMethod": "GET", + "description": "Gets remarketing audiences to which the user has access.", + "parameters": { + "accountId": { + "type": "string", + "description": "Account ID for the remarketing audience to retrieve.", + "required": true, + "location": "path" + }, + "remarketingAudienceId": { + "type": "string", + "description": "The ID to retrieve the Remarketing Audience for.", + "required": true, + "location": "path" + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID for the remarketing audience to retrieve.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "insert": { + "id": "analytics.management.remarketingAudience.insert", + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", + "httpMethod": "POST", + "description": "Creates a new remarketing audiences.", + "parameters": { + "accountId": { + "type": "string", + "description": "Account ID to create the remarketing audience for.", + "required": true, + "location": "path" + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID to create the remarketing audience for.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "list": { + "id": "analytics.management.remarketingAudience.list", + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences", + "httpMethod": "GET", + "description": "Lists remarketing audiences to which the user has access.", + "parameters": { + "accountId": { + "type": "string", + "description": "Account ID for the remarketing audience to retrieve.", + "required": true, + "location": "path" + }, + "max-results": { + "type": "integer", + "description": "The maximum number of remarketing audiences to include in this response.", + "format": "int32", + "location": "query" + }, + "start-index": { + "type": "integer", + "description": "An index of the first entity to retrieve. Use this parameter as a pagination mechanism along with the max-results parameter.", + "format": "int32", + "minimum": "1", + "location": "query" + }, + "type": { + "type": "string", + "default": "all", + "location": "query" + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID for the remarketing audience to retrieve.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId" + ], + "response": { + "$ref": "RemarketingAudiences" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit", + "https://www.googleapis.com/auth/analytics.readonly" + ] + }, + "patch": { + "id": "analytics.management.remarketingAudience.patch", + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "httpMethod": "PATCH", + "description": "Updates an existing remarketing audiences. This method supports patch semantics.", + "parameters": { + "accountId": { + "type": "string", + "description": "Account ID for the remarketing audience to update.", + "required": true, + "location": "path" + }, + "remarketingAudienceId": { + "type": "string", + "description": "Remarketing audience ID of the remarketing audience to update.", + "required": true, + "location": "path" + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID for the remarketing audience to update.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + }, + "update": { + "id": "analytics.management.remarketingAudience.update", + "path": "management/accounts/{accountId}/webproperties/{webPropertyId}/remarketingAudiences/{remarketingAudienceId}", + "httpMethod": "PUT", + "description": "Updates an existing remarketing audiences.", + "parameters": { + "accountId": { + "type": "string", + "description": "Account ID for the remarketing audience to update.", + "required": true, + "location": "path" + }, + "remarketingAudienceId": { + "type": "string", + "description": "Remarketing audience ID of the remarketing audience to update.", + "required": true, + "location": "path" + }, + "webPropertyId": { + "type": "string", + "description": "Web property ID for the remarketing audience to update.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "webPropertyId", + "remarketingAudienceId" + ], + "request": { + "$ref": "RemarketingAudience" + }, + "response": { + "$ref": "RemarketingAudience" + }, + "scopes": [ + "https://www.googleapis.com/auth/analytics.edit" + ] + } + } + }, "segments": { "methods": { "list": { diff --git a/etc/api/androidenterprise/v1/androidenterprise-api.json b/etc/api/androidenterprise/v1/androidenterprise-api.json index fda2c2219d..0d2d8c6843 100644 --- a/etc/api/androidenterprise/v1/androidenterprise-api.json +++ b/etc/api/androidenterprise/v1/androidenterprise-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/xo0cuZx80TlOD4lKDwMTBOsYYMo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/ebT1VU-volvkxDEmtUji3_N4Omw\"", "discoveryVersion": "v1", "id": "androidenterprise:v1", "name": "androidenterprise", "canonicalName": "Android Enterprise", "version": "v1", - "revision": "20160331", + "revision": "20160831", "title": "Google Play EMM API", "description": "Manages the deployment of apps to Android for Work users.", "ownerDomain": "google.com", @@ -77,6 +77,17 @@ } }, "schemas": { + "Administrator": { + "id": "Administrator", + "type": "object", + "description": "This represents an enterprise administrator who can manage the enterprise in the Google Play for Work Store.", + "properties": { + "email": { + "type": "string", + "description": "The administrator's email address." + } + } + }, "AppRestrictionsSchema": { "id": "AppRestrictionsSchema", "type": "object", @@ -96,6 +107,17 @@ } } }, + "AppRestrictionsSchemaChangeEvent": { + "id": "AppRestrictionsSchemaChangeEvent", + "type": "object", + "description": "An event generated when a new app version is uploaded to Google Play and its app restrictions schema changed. To fetch the app restrictions schema for an app, use Products.getAppRestrictionsSchema on the EMM API.", + "properties": { + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the app restriction schema changed. This field will always be present." + } + } + }, "AppRestrictionsSchemaRestriction": { "id": "AppRestrictionsSchemaRestriction", "type": "object", @@ -127,6 +149,13 @@ "type": "string", "description": "The unique key that the product uses to identify the restriction, e.g. \"com.google.android.gm.fieldname\"." }, + "nestedRestriction": { + "type": "array", + "description": "For bundle or bundleArray restrictions, the list of nested restrictions.", + "items": { + "$ref": "AppRestrictionsSchemaRestriction" + } + }, "restrictionType": { "type": "string", "description": "The type of the restriction." @@ -168,6 +197,17 @@ } } }, + "AppUpdateEvent": { + "id": "AppUpdateEvent", + "type": "object", + "description": "An event generated when a new version of an app is uploaded to Google Play. Notifications are sent for new public versions only: alpha, beta, or canary versions do not generate this event. To fetch up-to-date version history for an app, use Products.Get on the EMM API.", + "properties": { + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") that was updated. This field will always be present." + } + } + }, "AppVersion": { "id": "AppVersion", "type": "object", @@ -200,6 +240,22 @@ } } }, + "AuthenticationToken": { + "id": "AuthenticationToken", + "type": "object", + "description": "An AuthenticationToken is used by the EMM's device policy client on a device to provision the given EMM-managed user on that device.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#authenticationToken\".", + "default": "androidenterprise#authenticationToken" + }, + "token": { + "type": "string", + "description": "The authentication token to be passed to the device policy client on the device where it can be used to provision the account for which this token was generated." + } + } + }, "Collection": { "id": "Collection", "type": "object", @@ -297,7 +353,7 @@ }, "managementType": { "type": "string", - "description": "The mechanism by which this device is managed by the EMM. \"managedDevice\" means that the EMM's app is a device owner. \"managedProfile\" means that the EMM's app is the profile owner (and there is a separate personal profile which is not managed). \"containerApp\" means that the EMM's app is managing the Android for Work container app on the device." + "description": "Identifies the extent to which the device is controlled by an Android for Work EMM in various deployment configurations.\nPossible values include: \n- \"managedDevice\"—A device that has the EMM's device policy controller (DPC) as the device owner.\n- \"managedProfile\"—A device that has a work profile managed by the DPC (DPC is profile owner) in addition to a separate, personal profile that is unavailable to the DPC.\n- \"containerApp\"—A device running the Android for Work App. The Android for Work App is managed by the DPC.\n- \"unmanagedProfile\"—A device that has been allowed (by the domain's admin, using the Admin Console to enable the privilege) to use Android for Work apps or Google Apps for Work, but the profile is itself not owned by a DPC." } } }, @@ -339,8 +395,15 @@ "Enterprise": { "id": "Enterprise", "type": "object", - "description": "An enterprise resource represents a binding between an organization and their EMM.\n\nTo create an enterprise, an admin of the enterprise must first go through a Play for Work sign-up flow. At the end of this the admin will be presented with a token (a short opaque alphanumeric string). They must then present this to the EMM, who then supplies it to the enroll method. Until this is done the EMM will not have any access to the enterprise.\n\nAfter calling enroll the EMM should call setAccount to specify the service account that will be allowed to act on behalf of the enterprise, which will be required for access to the enterprise's data through this API. Only one call of setAccount is allowed for a given enterprise; the only way to change the account later is to unenroll the enterprise and enroll it again (obtaining a new token).\n\nThe EMM can unenroll an enterprise in order to sever the binding between them. Re-enrolling an enterprise is possible, but requires a new token to be retrieved. Enterprises.unenroll requires the EMM's credentials (as enroll does), not the enterprise's. Enterprises.unenroll can only be used for enterprises that were previously enrolled with the enroll call. Any enterprises that were enrolled using the (deprecated) Enterprises.insert call must be unenrolled with Enterprises.delete and can then be re-enrolled using the Enterprises.enroll call.\n\nThe ID for an enterprise is an opaque string. It is returned by insert and enroll and can also be retrieved if the enterprise's primary domain is known using the list method.", + "description": "An Enterprises resource represents the binding between an EMM and a specific organization. That binding can be instantiated in one of two different ways using this API as follows: \n- For Google managed domain customers, the process involves using Enterprises.enroll and Enterprises.setAccount (in conjunction with artifacts obtained from the Admin console and the Google API Console) and submitted to the EMM through a more-or-less manual process. \n- For Android for Work Accounts customers, the process involves using Enterprises.generateSignupUrl and Enterprises.completeSignup in conjunction with the Android for Work Sign-up UI (Google-provided mechanism) to create the binding without manual steps. As an EMM, you can support either or both approaches in your EMM console. See Create an Enterprise for details.", "properties": { + "administrator": { + "type": "array", + "description": "Administrators of the enterprise. This is only supported for enterprises created via the EMM-initiated flow.", + "items": { + "$ref": "Administrator" + } + }, "id": { "type": "string", "description": "The unique ID for the enterprise." @@ -352,11 +415,11 @@ }, "name": { "type": "string", - "description": "The name of the enterprise, e.g. \"Example Inc\"." + "description": "The name of the enterprise, for example, \"Example, Inc\"." }, "primaryDomain": { "type": "string", - "description": "The enterprise's primary domain, e.g. \"example.com\".", + "description": "The enterprise's primary domain, such as \"example.com\".", "annotations": { "required": [ "androidenterprise.enterprises.insert" @@ -550,6 +613,33 @@ } } }, + "InstallFailureEvent": { + "id": "InstallFailureEvent", + "type": "object", + "description": "An event generated when an app installation failed on a device", + "properties": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device. This field will always be present." + }, + "failureDetails": { + "type": "string", + "description": "Additional details on the failure if applicable." + }, + "failureReason": { + "type": "string", + "description": "The reason for the installation failure. This field will always be present." + }, + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the install failure event occured. This field will always be present." + }, + "userId": { + "type": "string", + "description": "The ID of the user. This field will always be present." + } + } + }, "InstallsListResponse": { "id": "InstallsListResponse", "type": "object", @@ -584,6 +674,229 @@ } } }, + "ManagedConfiguration": { + "id": "ManagedConfiguration", + "type": "object", + "description": "A managed configuration resource contains the set of managed properties that have been configured for an Android app. The app's developer would have defined configurable properties in the managed configurations schema.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfiguration\".", + "default": "androidenterprise#managedConfiguration" + }, + "managedProperty": { + "type": "array", + "description": "The set of managed properties for this configuration.", + "items": { + "$ref": "ManagedProperty" + } + }, + "productId": { + "type": "string", + "description": "The ID of the product that the managed configuration is for, e.g. \"app:com.google.android.gm\"." + } + } + }, + "ManagedConfigurationsForDeviceListResponse": { + "id": "ManagedConfigurationsForDeviceListResponse", + "type": "object", + "description": "The managed configuration resources for the device.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForDeviceListResponse\".", + "default": "androidenterprise#managedConfigurationsForDeviceListResponse" + }, + "managedConfigurationForDevice": { + "type": "array", + "description": "A managed configuration for an app on a specific device.", + "items": { + "$ref": "ManagedConfiguration" + } + } + } + }, + "ManagedConfigurationsForUserListResponse": { + "id": "ManagedConfigurationsForUserListResponse", + "type": "object", + "description": "The managed configuration resources for the user.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#managedConfigurationsForUserListResponse\".", + "default": "androidenterprise#managedConfigurationsForUserListResponse" + }, + "managedConfigurationForUser": { + "type": "array", + "description": "A managed configuration for an app for a specific user.", + "items": { + "$ref": "ManagedConfiguration" + } + } + } + }, + "ManagedProperty": { + "id": "ManagedProperty", + "type": "object", + "description": "A managed property of a managed configuration. The property must match one of the properties in the app restrictions schema of the product. Exactly one of the value fields must be populated, and it must match the property's type in the app restrictions schema.", + "properties": { + "key": { + "type": "string", + "description": "The unique key that identifies the property." + }, + "valueBool": { + "type": "boolean", + "description": "The boolean value - this will only be present if type of the property is bool." + }, + "valueBundle": { + "$ref": "ManagedPropertyBundle", + "description": "The bundle of managed properties - this will only be present if type of the property is bundle." + }, + "valueBundleArray": { + "type": "array", + "description": "The list of bundles of properties - this will only be present if type of the property is bundle_array.", + "items": { + "$ref": "ManagedPropertyBundle" + } + }, + "valueInteger": { + "type": "integer", + "description": "The integer value - this will only be present if type of the property is integer.", + "format": "int32" + }, + "valueString": { + "type": "string", + "description": "The string value - this will only be present if type of the property is string, choice or hidden." + }, + "valueStringArray": { + "type": "array", + "description": "The list of string values - this will only be present if type of the property is multiselect.", + "items": { + "type": "string" + } + } + } + }, + "ManagedPropertyBundle": { + "id": "ManagedPropertyBundle", + "type": "object", + "description": "A bundle of managed properties.", + "properties": { + "managedProperty": { + "type": "array", + "description": "The list of managed properties.", + "items": { + "$ref": "ManagedProperty" + } + } + } + }, + "NewPermissionsEvent": { + "id": "NewPermissionsEvent", + "type": "object", + "description": "An event generated when new permissions are added to an app.", + "properties": { + "approvedPermissions": { + "type": "array", + "description": "The set of permissions that the enterprise admin has already approved for this application. Use Permissions.Get on the EMM API to retrieve details about these permissions.", + "items": { + "type": "string" + } + }, + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which new permissions were added. This field will always be present." + }, + "requestedPermissions": { + "type": "array", + "description": "The set of permissions that the app is currently requesting. Use Permissions.Get on the EMM API to retrieve details about these permissions.", + "items": { + "type": "string" + } + } + } + }, + "Notification": { + "id": "Notification", + "type": "object", + "description": "A notification of one event relating to an enterprise.", + "properties": { + "appRestrictionsSchemaChangeEvent": { + "$ref": "AppRestrictionsSchemaChangeEvent", + "description": "Notifications about new app restrictions schema changes." + }, + "appUpdateEvent": { + "$ref": "AppUpdateEvent", + "description": "Notifications about app updates." + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise for which the notification is sent. This will always be present." + }, + "installFailureEvent": { + "$ref": "InstallFailureEvent", + "description": "Notifications about an app installation failure." + }, + "newPermissionsEvent": { + "$ref": "NewPermissionsEvent", + "description": "Notifications about new app permissions." + }, + "productApprovalEvent": { + "$ref": "ProductApprovalEvent", + "description": "Notifications about changes to a product's approval status." + }, + "productAvailabilityChangeEvent": { + "$ref": "ProductAvailabilityChangeEvent", + "description": "Notifications about product availability changes." + }, + "timestampMillis": { + "type": "string", + "description": "The time when the notification was published in milliseconds since 1970-01-01T00:00:00Z. This will always be present.", + "format": "int64" + } + } + }, + "NotificationSet": { + "id": "NotificationSet", + "type": "object", + "description": "A resource returned by the PullNotificationSet API, which contains a collection of notifications for enterprises associated with the service account authenticated for the request.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#notificationSet\".", + "default": "androidenterprise#notificationSet" + }, + "notification": { + "type": "array", + "description": "The notifications received, or empty if no notifications are present.", + "items": { + "$ref": "Notification" + } + }, + "notificationSetId": { + "type": "string", + "description": "The notification set ID, required to mark the notification as received with the Enterprises.AcknowledgeNotification API. This will be omitted if no notifications are present." + } + } + }, + "PageInfo": { + "id": "PageInfo", + "type": "object", + "properties": { + "resultPerPage": { + "type": "integer", + "format": "int32" + }, + "startIndex": { + "type": "integer", + "format": "int32" + }, + "totalResults": { + "type": "integer", + "format": "int32" + } + } + }, "Permission": { "id": "Permission", "type": "object", @@ -611,7 +924,7 @@ "Product": { "id": "Product", "type": "object", - "description": "A product represents an app in the Google Play Store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)\n\nThe information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.", + "description": "A Products resource represents an app in the Google Play Store that is available to at least some users in the enterprise. (Some apps are restricted to a single enterprise, and no information about them is made available outside that enterprise.)\n\nThe information provided for each product (localized name, icon, link to the full Google Play details page) is intended to allow a basic representation of the product within an EMM user interface.", "properties": { "appVersion": { "type": "array", @@ -647,7 +960,7 @@ }, "productPricing": { "type": "string", - "description": "Whether this product is free, free with in-app purchases, or paid." + "description": "Whether this product is free, free with in-app purchases, or paid. If the pricing is unknown, this means the product is not generally available anymore (even though it might still be available to people who own it)." }, "requiresContainerApp": { "type": "boolean", @@ -667,6 +980,36 @@ } } }, + "ProductApprovalEvent": { + "id": "ProductApprovalEvent", + "type": "object", + "description": "An event generated when a product's approval status is changed.", + "properties": { + "approved": { + "type": "string", + "description": "Whether the product was approved or unapproved. This field will always be present." + }, + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the approval status has changed. This field will always be present." + } + } + }, + "ProductAvailabilityChangeEvent": { + "id": "ProductAvailabilityChangeEvent", + "type": "object", + "description": "An event generated whenever a product's availability changes.", + "properties": { + "availabilityStatus": { + "type": "string", + "description": "The new state of the product. This field will always be present." + }, + "productId": { + "type": "string", + "description": "The id of the product (e.g. \"app:com.google.android.gm\") for which the product availability changed. This field will always be present." + } + } + }, "ProductPermission": { "id": "ProductPermission", "type": "object", @@ -749,6 +1092,115 @@ } } }, + "ProductsListResponse": { + "id": "ProductsListResponse", + "type": "object", + "description": "The matching products.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#productsListResponse\".", + "default": "androidenterprise#productsListResponse" + }, + "pageInfo": { + "$ref": "PageInfo", + "description": "General pagination information." + }, + "product": { + "type": "array", + "description": "Information about a product (e.g. an app) in the Google Play Store, for display to an enterprise admin.", + "items": { + "$ref": "Product" + } + }, + "tokenPagination": { + "$ref": "TokenPagination", + "description": "Pagination information for token pagination." + } + } + }, + "ServiceAccount": { + "id": "ServiceAccount", + "type": "object", + "description": "A service account identity, including the name and credentials that can be used to authenticate as the service account.", + "properties": { + "key": { + "$ref": "ServiceAccountKey", + "description": "Credentials that can be used to authenticate as this ServiceAccount." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccount\".", + "default": "androidenterprise#serviceAccount" + }, + "name": { + "type": "string", + "description": "The account name of the service account, in the form of an email address. Assigned by the server." + } + } + }, + "ServiceAccountKey": { + "id": "ServiceAccountKey", + "type": "object", + "description": "Credentials that can be used to authenticate as a service account.", + "properties": { + "data": { + "type": "string", + "description": "The body of the private key credentials file, in string format. This is only populated when the ServiceAccountKey is created, and is not stored by Google." + }, + "id": { + "type": "string", + "description": "An opaque, unique identifier for this ServiceAccountKey. Assigned by the server." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#serviceAccountKey\".", + "default": "androidenterprise#serviceAccountKey" + }, + "type": { + "type": "string", + "description": "The file format of the generated key data.", + "annotations": { + "required": [ + "androidenterprise.serviceaccountkeys.insert" + ] + } + } + } + }, + "ServiceAccountKeysListResponse": { + "id": "ServiceAccountKeysListResponse", + "type": "object", + "properties": { + "serviceAccountKey": { + "type": "array", + "description": "The service account credentials.", + "items": { + "$ref": "ServiceAccountKey" + } + } + } + }, + "SignupInfo": { + "id": "SignupInfo", + "type": "object", + "description": "A resource returned by the GenerateSignupUrl API, which contains the Signup URL and Completion Token.", + "properties": { + "completionToken": { + "type": "string", + "description": "An opaque token that will be required, along with the Enterprise Token, for obtaining the enterprise resource from CompleteSignup." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#signupInfo\".", + "default": "androidenterprise#signupInfo" + }, + "url": { + "type": "string", + "description": "A URL under which the Admin can sign up for an enterprise. The page pointed to cannot be rendered in an iframe." + } + } + }, "StoreCluster": { "id": "StoreCluster", "type": "object", @@ -772,7 +1224,7 @@ }, "orderInPage": { "type": "string", - "description": "String (US-ASCII only) used to determine order of this cluster within the parent page's elements. Page elements are sorted in lexicographic order of this field. Duplicated values are allowed, but ordering between elements with duplicate order is undefined.\n\nThe value of this field is never visible to a user, it is used solely for the purpose of defining an ordering. Maximum length is 20 characters." + "description": "String (US-ASCII only) used to determine order of this cluster within the parent page's elements. Page elements are sorted in lexicographic order of this field. Duplicated values are allowed, but ordering between elements with duplicate order is undefined.\n\nThe value of this field is never visible to a user, it is used solely for the purpose of defining an ordering. Maximum length is 256 characters." }, "productId": { "type": "array", @@ -790,7 +1242,7 @@ "properties": { "homepageId": { "type": "string", - "description": "The ID of the store page to be used as the homepage. The homepage will be used as the first page shown in the Google Play for Work store.\n\nIf there is no homepage set, an empty store is shown. The homepage can be unset (by not specifying it) to empty the store.\n\nIf there exists at least one page, this field must be set to the ID of a valid page." + "description": "The ID of the store page to be used as the homepage. The homepage will be used as the first page shown in the Google Play for Work store.\n\nIf a homepage has not been set, the Play store shown on devices will be empty. Not specifying a homepage on a store layout effectively empties the store.\n\nIf there exists at least one page, this field must be set to the ID of a valid page." }, "kind": { "type": "string", @@ -867,11 +1319,45 @@ } } }, + "TokenPagination": { + "id": "TokenPagination", + "type": "object", + "properties": { + "nextPageToken": { + "type": "string" + }, + "previousPageToken": { + "type": "string" + } + } + }, "User": { "id": "User", "type": "object", - "description": "A user resource represents an individual user within the enterprise's domain.\n\nNote that each user is associated with a Google account based on the user's corporate email address (which must be in one of the enterprise's domains). As part of installing the EMM's DPC app to manage a device the Google account must be provisioned to the device, and so the user resource must be created before that. This can be done using the Google Admin SDK Directory API.\n\nThe ID for a user is an opaque string. It can be retrieved using the list method queried by the user's primary email address.", + "description": "A Users resource represents an account associated with an enterprise. The account may be specific to a device or to an individual user (who can then use the account across multiple devices). The account may provide access to Google Play for Work only, or to other Google services, depending on the identity model: \n- Google managed domain identity model requires synchronization to Google account sources (via primaryEmail). \n- Android for Work Accounts identity model provides a dynamic means for enterprises to create user or device accounts as needed. These accounts provide access to Google Play for Work only.", "properties": { + "accountIdentifier": { + "type": "string", + "description": "A unique identifier you create for this user, such as \"user342\" or \"asset#44418\". Do not use personally identifiable information (PII) for this property. Must always be set for EMM-managed users. Not set for Google-managed users.", + "annotations": { + "required": [ + "androidenterprise.users.insert" + ] + } + }, + "accountType": { + "type": "string", + "description": "The type of account that this user represents. A userAccount can be installed on multiple devices, but a deviceAccount is specific to a single device. An EMM-managed user (emmManaged) can be either type (userAccount, deviceAccount), but a Google-managed user (googleManaged) is always a userAccount.", + "annotations": { + "required": [ + "androidenterprise.users.insert" + ] + } + }, + "displayName": { + "type": "string", + "description": "The name that will appear in user interfaces. Setting this property is optional when creating EMM-managed users. If you do set this property, use something generic about the organization (such as \"Example, Inc.\") or your name (as EMM). Not used for Google-managed user accounts." + }, "id": { "type": "string", "description": "The unique ID for the user." @@ -881,9 +1367,13 @@ "description": "Identifies what kind of resource this is. Value: the fixed string \"androidenterprise#user\".", "default": "androidenterprise#user" }, + "managementType": { + "type": "string", + "description": "The entity that manages the user. With googleManaged users, the source of truth is Google so EMMs have to make sure a Google Account exists for the user. With emmManaged users, the EMM is in charge." + }, "primaryEmail": { "type": "string", - "description": "The user's primary email, e.g. \"jsmith@example.com\"." + "description": "The user's primary email address, for example, \"jsmith@example.com\". Will always be set for Google managed users and not set for EMM managed users." } } }, @@ -1332,7 +1822,7 @@ "id": "androidenterprise.devices.getState", "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", "httpMethod": "GET", - "description": "Retrieves whether a device is enabled or disabled for access by the user to Google services. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services.", + "description": "Retrieves whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", "parameters": { "deviceId": { "type": "string", @@ -1399,7 +1889,7 @@ "id": "androidenterprise.devices.setState", "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/state", "httpMethod": "PUT", - "description": "Sets whether a device is enabled or disabled for access by the user to Google services. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services.", + "description": "Sets whether a device's access to Google services is enabled or disabled. The device state takes effect only if enforcing EMM policies on Android devices is enabled in the Google Admin Console. Otherwise, the device state is ignored and all devices are allowed access to Google services. This is only supported for Google-managed users.", "parameters": { "deviceId": { "type": "string", @@ -1439,6 +1929,46 @@ }, "enterprises": { "methods": { + "acknowledgeNotificationSet": { + "id": "androidenterprise.enterprises.acknowledgeNotificationSet", + "path": "enterprises/acknowledgeNotificationSet", + "httpMethod": "POST", + "description": "Acknowledges notifications that were received from Enterprises.PullNotificationSet to prevent subsequent calls from returning the same notifications.", + "parameters": { + "notificationSetId": { + "type": "string", + "description": "The notification set ID as returned by Enterprises.PullNotificationSet. This must be provided.", + "location": "query" + } + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "completeSignup": { + "id": "androidenterprise.enterprises.completeSignup", + "path": "enterprises/completeSignup", + "httpMethod": "POST", + "description": "Completes the signup flow, by specifying the Completion token and Enterprise token. This request must not be called multiple times for a given Enterprise Token.", + "parameters": { + "completionToken": { + "type": "string", + "description": "The Completion token initially returned by GenerateSignupUrl.", + "location": "query" + }, + "enterpriseToken": { + "type": "string", + "description": "The Enterprise token appended to the Callback URL.", + "location": "query" + } + }, + "response": { + "$ref": "Enterprise" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "delete": { "id": "androidenterprise.enterprises.delete", "path": "enterprises/{enterpriseId}", @@ -1485,6 +2015,25 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "generateSignupUrl": { + "id": "androidenterprise.enterprises.generateSignupUrl", + "path": "enterprises/signupUrl", + "httpMethod": "POST", + "description": "Generates a sign-up URL.", + "parameters": { + "callbackUrl": { + "type": "string", + "description": "The callback URL to which the Admin will be redirected after successfully creating an enterprise. Before redirecting there the system will add a single query parameter to this URL named \"enterpriseToken\" which will contain an opaque token to be used for the CompleteSignup request.\nBeware that this means that the URL will be parsed, the parameter added and then a new URL formatted, i.e. there may be some minor formatting changes and, more importantly, the URL must be well-formed so that it can be parsed.", + "location": "query" + } + }, + "response": { + "$ref": "SignupInfo" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "get": { "id": "androidenterprise.enterprises.get", "path": "enterprises/{enterpriseId}", @@ -1508,11 +2057,47 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "getServiceAccount": { + "id": "androidenterprise.enterprises.getServiceAccount", + "path": "enterprises/{enterpriseId}/serviceAccount", + "httpMethod": "GET", + "description": "Returns a service account and credentials. The service account can be bound to the enterprise by calling setAccount. The service account is unique to this enterprise and EMM, and will be deleted if the enterprise is unbound. The credentials contain private key data and are not stored server-side.\n\nThis method can only be called after calling Enterprises.Enroll or Enterprises.CompleteSignup, and before Enterprises.SetAccount; at other times it will return an error.\n\nSubsequent calls after the first will generate a new, unique set of credentials, and invalidate the previously generated credentials.\n\nOnce the service account is bound to the enterprise, it can be managed using the serviceAccountKeys resource.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "keyType": { + "type": "string", + "description": "The type of credential to return with the service account. Required.", + "enum": [ + "googleCredentials", + "pkcs12" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "response": { + "$ref": "ServiceAccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "getStoreLayout": { "id": "androidenterprise.enterprises.getStoreLayout", "path": "enterprises/{enterpriseId}/storeLayout", "httpMethod": "GET", - "description": "Returns the store layout resource.", + "description": "Returns the store layout for the enterprise. If the store layout has not been set, or if the store layout has no homepageId set, returns a NOT_FOUND error.", "parameters": { "enterpriseId": { "type": "string", @@ -1561,7 +2146,7 @@ "id": "androidenterprise.enterprises.list", "path": "enterprises", "httpMethod": "GET", - "description": "Looks up an enterprise by domain name.", + "description": "Looks up an enterprise by domain name. This is only supported for enterprises created via the Google-initiated creation flow. Lookup of the id is not needed for enterprises created via the EMM-initiated flow since the EMM learns the enterprise ID in the callback specified in the Enterprises.generateSignupUrl call.", "parameters": { "domain": { "type": "string", @@ -1580,6 +2165,33 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "pullNotificationSet": { + "id": "androidenterprise.enterprises.pullNotificationSet", + "path": "enterprises/pullNotificationSet", + "httpMethod": "POST", + "description": "Pulls and returns a notification set for the enterprises associated with the service account authenticated for the request. The notification set may be empty if no notification are pending.\nA notification set returned needs to be acknowledged within 20 seconds by calling Enterprises.AcknowledgeNotificationSet, unless the notification set is empty.\nNotifications that are not acknowledged within the 20 seconds will eventually be included again in the response to another PullNotificationSet request, and those that are never acknowledged will ultimately be deleted according to the Google Cloud Platform Pub/Sub system policy.\nMultiple requests might be performed concurrently to retrieve notifications, in which case the pending notifications (if any) will be split among each caller, if any are pending.", + "parameters": { + "requestMode": { + "type": "string", + "description": "The request mode for pulling notifications. If omitted, defaults to WAIT_FOR_NOTIFCATIONS.\nIf this is set to WAIT_FOR_NOTIFCATIONS, the request will eventually timeout, in which case it should be retried.", + "enum": [ + "returnImmediately", + "waitForNotifications" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "response": { + "$ref": "NotificationSet" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "sendTestPushNotification": { "id": "androidenterprise.enterprises.sendTestPushNotification", "path": "enterprises/{enterpriseId}/sendTestPushNotification", @@ -1633,7 +2245,7 @@ "id": "androidenterprise.enterprises.setStoreLayout", "path": "enterprises/{enterpriseId}/storeLayout", "httpMethod": "PUT", - "description": "Sets the store layout resource.", + "description": "Sets the store layout for the enterprise.", "parameters": { "enterpriseId": { "type": "string", @@ -2183,6 +2795,411 @@ } } }, + "managedconfigurationsfordevice": { + "methods": { + "delete": { + "id": "androidenterprise.managedconfigurationsfordevice.delete", + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "httpMethod": "DELETE", + "description": "Removes a per-device managed configuration for an app for the specified device.", + "parameters": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device.", + "required": true, + "location": "path" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForDeviceId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "id": "androidenterprise.managedconfigurationsfordevice.get", + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "httpMethod": "GET", + "description": "Retrieves details of a per-device managed configuration.", + "parameters": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device.", + "required": true, + "location": "path" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForDeviceId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "id": "androidenterprise.managedconfigurationsfordevice.list", + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice", + "httpMethod": "GET", + "description": "Lists all the per-device managed configurations for the specified device. Only the ID is set.", + "parameters": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device.", + "required": true, + "location": "path" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId" + ], + "response": { + "$ref": "ManagedConfigurationsForDeviceListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "id": "androidenterprise.managedconfigurationsfordevice.patch", + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "httpMethod": "PATCH", + "description": "Adds or updates a per-device managed configuration for an app for the specified device. This method supports patch semantics.", + "parameters": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device.", + "required": true, + "location": "path" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForDeviceId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "id": "androidenterprise.managedconfigurationsfordevice.update", + "path": "enterprises/{enterpriseId}/users/{userId}/devices/{deviceId}/managedConfigurationsForDevice/{managedConfigurationForDeviceId}", + "httpMethod": "PUT", + "description": "Adds or updates a per-device managed configuration for an app for the specified device.", + "parameters": { + "deviceId": { + "type": "string", + "description": "The Android ID of the device.", + "required": true, + "location": "path" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForDeviceId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "deviceId", + "managedConfigurationForDeviceId" + ], + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, + "managedconfigurationsforuser": { + "methods": { + "delete": { + "id": "androidenterprise.managedconfigurationsforuser.delete", + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "httpMethod": "DELETE", + "description": "Removes a per-user managed configuration for an app for the specified user.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForUserId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "get": { + "id": "androidenterprise.managedconfigurationsforuser.get", + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "httpMethod": "GET", + "description": "Retrieves details of a per-user managed configuration for an app for the specified user.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForUserId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "id": "androidenterprise.managedconfigurationsforuser.list", + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser", + "httpMethod": "GET", + "description": "Lists all the per-user managed configurations for the specified user. Only the ID is set.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "response": { + "$ref": "ManagedConfigurationsForUserListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "patch": { + "id": "androidenterprise.managedconfigurationsforuser.patch", + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "httpMethod": "PATCH", + "description": "Adds or updates a per-user managed configuration for an app for the specified user. This method supports patch semantics.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForUserId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "update": { + "id": "androidenterprise.managedconfigurationsforuser.update", + "path": "enterprises/{enterpriseId}/users/{userId}/managedConfigurationsForUser/{managedConfigurationForUserId}", + "httpMethod": "PUT", + "description": "Adds or updates a per-user managed configuration for an app for the specified user.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "managedConfigurationForUserId": { + "type": "string", + "description": "The ID of the managed configuration (a product ID), e.g. \"app:com.google.android.gm\".", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId", + "managedConfigurationForUserId" + ], + "request": { + "$ref": "ManagedConfiguration" + }, + "response": { + "$ref": "ManagedConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, "permissions": { "methods": { "get": { @@ -2221,7 +3238,7 @@ "id": "androidenterprise.products.approve", "path": "enterprises/{enterpriseId}/products/{productId}/approve", "httpMethod": "POST", - "description": "Approves the specified product (and the relevant app permissions, if any).", + "description": "Approves the specified product and the relevant app permissions, if any. The maximum number of products that you can approve per enterprise customer is 1,000.\n\nTo learn how to use Google Play for Work to design and create a store layout to display approved products to your users, see Store Layout Design.", "parameters": { "enterpriseId": { "type": "string", @@ -2321,7 +3338,7 @@ "id": "androidenterprise.products.getAppRestrictionsSchema", "path": "enterprises/{enterpriseId}/products/{productId}/appRestrictionsSchema", "httpMethod": "GET", - "description": "Retrieves the schema defining app restrictions configurable for this product. All products have a schema, but this may be empty if no app restrictions are defined.", + "description": "Retrieves the schema that defines the configurable properties for this product. All products have a schema, but this schema may be empty if no managed configurations have been defined. This schema can be used to populate a UI that allows an administrator to configure the product. To apply a managed configuration based on the schema obtained using this API, see Managed Configurations through Play.", "parameters": { "enterpriseId": { "type": "string", @@ -2382,6 +3399,82 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "list": { + "id": "androidenterprise.products.list", + "path": "enterprises/{enterpriseId}/products", + "httpMethod": "GET", + "description": "Finds approved products that match a query, or all approved products if there is no query.", + "parameters": { + "approved": { + "type": "boolean", + "description": "Specifies whether to search among all products (false) or among only products that have been approved (true). Only \"true\" is supported, and should be specified.", + "location": "query" + }, + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "language": { + "type": "string", + "description": "The BCP47 tag for the user's preferred language (e.g. \"en-US\", \"de\"). Results are returned in the language best matching the preferred language.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Specifies the maximum number of products that can be returned per request. If not specified, uses a default value of 100, which is also the maximum retrievable within a single response.", + "format": "uint32", + "location": "query" + }, + "query": { + "type": "string", + "description": "The search query as typed in the Google Play Store search box. If omitted, all approved apps will be returned (using the pagination parameters), including apps that are not available in the store (e.g. unpublished apps).", + "location": "query" + }, + "token": { + "type": "string", + "description": "A pagination token is contained in a request\u0092s response when there are more products. The token can be used in a subsequent request to obtain more products, and so forth. This parameter cannot be used in the initial request.", + "location": "query" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "response": { + "$ref": "ProductsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "unapprove": { + "id": "androidenterprise.products.unapprove", + "path": "enterprises/{enterpriseId}/products/{productId}/unapprove", + "httpMethod": "POST", + "description": "Unapproves the specified product (and the relevant app permissions, if any)", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "productId": { + "type": "string", + "description": "The ID of the product.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "productId" + ], + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "updatePermissions": { "id": "androidenterprise.products.updatePermissions", "path": "enterprises/{enterpriseId}/products/{productId}/permissions", @@ -2417,6 +3510,86 @@ } } }, + "serviceaccountkeys": { + "methods": { + "delete": { + "id": "androidenterprise.serviceaccountkeys.delete", + "path": "enterprises/{enterpriseId}/serviceAccountKeys/{keyId}", + "httpMethod": "DELETE", + "description": "Removes and invalidates the specified credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "keyId": { + "type": "string", + "description": "The ID of the key.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "keyId" + ], + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "insert": { + "id": "androidenterprise.serviceaccountkeys.insert", + "path": "enterprises/{enterpriseId}/serviceAccountKeys", + "httpMethod": "POST", + "description": "Generates new credentials for the service account associated with this enterprise. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.\n\nOnly the type of the key should be populated in the resource to be inserted.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "request": { + "$ref": "ServiceAccountKey" + }, + "response": { + "$ref": "ServiceAccountKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "list": { + "id": "androidenterprise.serviceaccountkeys.list", + "path": "enterprises/{enterpriseId}/serviceAccountKeys", + "httpMethod": "GET", + "description": "Lists all active credentials for the service account associated with this enterprise. Only the ID and key type are returned. The calling service account must have been retrieved by calling Enterprises.GetServiceAccount and must have been set as the enterprise service account by calling Enterprises.SetAccount.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "response": { + "$ref": "ServiceAccountKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + } + } + }, "storelayoutclusters": { "methods": { "delete": { @@ -2813,6 +3986,63 @@ }, "users": { "methods": { + "delete": { + "id": "androidenterprise.users.delete", + "path": "enterprises/{enterpriseId}/users/{userId}", + "httpMethod": "DELETE", + "description": "Deleted an EMM-managed user.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, + "generateAuthenticationToken": { + "id": "androidenterprise.users.generateAuthenticationToken", + "path": "enterprises/{enterpriseId}/users/{userId}/authenticationToken", + "httpMethod": "POST", + "description": "Generates an authentication token which the device policy client can use to provision the given EMM-managed user account on a device. The generated token is single-use and expires after a few minutes.\n\nThis call only works with EMM-managed accounts.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "response": { + "$ref": "AuthenticationToken" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "generateToken": { "id": "androidenterprise.users.generateToken", "path": "enterprises/{enterpriseId}/users/{userId}/token", @@ -2903,11 +4133,37 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "insert": { + "id": "androidenterprise.users.insert", + "path": "enterprises/{enterpriseId}/users", + "httpMethod": "POST", + "description": "Creates a new EMM-managed user.\n\nThe Users resource passed in the body of the request should include an accountIdentifier and an accountType.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId" + ], + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "list": { "id": "androidenterprise.users.list", "path": "enterprises/{enterpriseId}/users", "httpMethod": "GET", - "description": "Looks up a user by their primary email address.", + "description": "Looks up a user by primary email address. This is only supported for Google-managed users. Lookup of the id is not needed for EMM-managed users because the id is already returned in the result of the Users.insert call.", "parameters": { "email": { "type": "string", @@ -2933,6 +4189,39 @@ "https://www.googleapis.com/auth/androidenterprise" ] }, + "patch": { + "id": "androidenterprise.users.patch", + "path": "enterprises/{enterpriseId}/users/{userId}", + "httpMethod": "PATCH", + "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value. This method supports patch semantics.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] + }, "revokeToken": { "id": "androidenterprise.users.revokeToken", "path": "enterprises/{enterpriseId}/users/{userId}/token", @@ -2992,6 +4281,39 @@ "scopes": [ "https://www.googleapis.com/auth/androidenterprise" ] + }, + "update": { + "id": "androidenterprise.users.update", + "path": "enterprises/{enterpriseId}/users/{userId}", + "httpMethod": "PUT", + "description": "Updates the details of an EMM-managed user.\n\nCan be used with EMM-managed users only (not Google managed users). Pass the new details in the Users resource in the request body. Only the displayName field can be changed. Other fields must either be unset or have the currently active value.", + "parameters": { + "enterpriseId": { + "type": "string", + "description": "The ID of the enterprise.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "The ID of the user.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "enterpriseId", + "userId" + ], + "request": { + "$ref": "User" + }, + "response": { + "$ref": "User" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidenterprise" + ] } } } diff --git a/etc/api/androidpublisher/v1.1/androidpublisher-api.json b/etc/api/androidpublisher/v1.1/androidpublisher-api.json index 5fce0bdea7..e4d8c3e3d9 100644 --- a/etc/api/androidpublisher/v1.1/androidpublisher-api.json +++ b/etc/api/androidpublisher/v1.1/androidpublisher-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/oG4KnSYJ6_j0nOlJWiaspUUKZyw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/fQeWIwZEL9ttN_Qbngm4RE2J7to\"", "discoveryVersion": "v1", "id": "androidpublisher:v1.1", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v1.1", - "revision": "20160324", + "revision": "20160817", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", @@ -119,7 +119,7 @@ }, "initiationTimestampMsec": { "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since Epoch.", + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", "format": "int64" }, "kind": { @@ -129,7 +129,7 @@ }, "validUntilTimestampMsec": { "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since Epoch.", + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", "format": "int64" } } diff --git a/etc/api/androidpublisher/v1/androidpublisher-api.json b/etc/api/androidpublisher/v1/androidpublisher-api.json index 8e6ab48206..813cc041fe 100644 --- a/etc/api/androidpublisher/v1/androidpublisher-api.json +++ b/etc/api/androidpublisher/v1/androidpublisher-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/KPYGNNPN5TYGxlm0G5KeZWRpfuM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/fNzp1BQHKDVJN-Ih8qfrclbLbv0\"", "discoveryVersion": "v1", "id": "androidpublisher:v1", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v1", - "revision": "20160324", + "revision": "20160817", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", @@ -88,7 +88,7 @@ }, "initiationTimestampMsec": { "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since Epoch.", + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", "format": "int64" }, "kind": { @@ -98,7 +98,7 @@ }, "validUntilTimestampMsec": { "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since Epoch.", + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", "format": "int64" } } diff --git a/etc/api/androidpublisher/v2/androidpublisher-api.json b/etc/api/androidpublisher/v2/androidpublisher-api.json index 4681542d6b..202714fb84 100644 --- a/etc/api/androidpublisher/v2/androidpublisher-api.json +++ b/etc/api/androidpublisher/v2/androidpublisher-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/wwfdcfcbj_VTedNtsK-mpfGIz58\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/UDk0LqlPPxkx5NU81sNZcbwgkD4\"", "discoveryVersion": "v1", "id": "androidpublisher:v2", "name": "androidpublisher", "canonicalName": "Android Publisher", "version": "v2", - "revision": "20160324", + "revision": "20160817", "title": "Google Play Developer API", "description": "Lets Android application developers access their Google Play accounts.", "ownerDomain": "google.com", @@ -208,6 +208,34 @@ } } }, + "Comment": { + "id": "Comment", + "type": "object", + "properties": { + "developerComment": { + "$ref": "DeveloperComment", + "description": "A comment from a developer." + }, + "userComment": { + "$ref": "UserComment", + "description": "A comment from a user." + } + } + }, + "DeveloperComment": { + "id": "DeveloperComment", + "type": "object", + "properties": { + "lastModified": { + "$ref": "Timestamp", + "description": "The last time at which this comment was updated." + }, + "text": { + "type": "string", + "description": "The content of the comment, i.e. reply body." + } + } + }, "Entitlement": { "id": "Entitlement", "type": "object", @@ -753,6 +781,78 @@ } } }, + "Review": { + "id": "Review", + "type": "object", + "properties": { + "authorName": { + "type": "string", + "description": "The name of the user who wrote the review." + }, + "comments": { + "type": "array", + "description": "A repeated field containing comments for the review.", + "items": { + "$ref": "Comment" + } + }, + "reviewId": { + "type": "string", + "description": "Unique identifier for this review." + } + } + }, + "ReviewReplyResult": { + "id": "ReviewReplyResult", + "type": "object", + "properties": { + "lastEdited": { + "$ref": "Timestamp", + "description": "The time at which the reply took effect." + }, + "replyText": { + "type": "string", + "description": "The reply text that was applied." + } + } + }, + "ReviewsListResponse": { + "id": "ReviewsListResponse", + "type": "object", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "reviews": { + "type": "array", + "items": { + "$ref": "Review" + } + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + } + }, + "ReviewsReplyRequest": { + "id": "ReviewsReplyRequest", + "type": "object", + "properties": { + "replyText": { + "type": "string", + "description": "The text to set as the reply. Replies of more than approximately 350 characters will be rejected. HTML tags will be stripped." + } + } + }, + "ReviewsReplyResponse": { + "id": "ReviewsReplyResponse", + "type": "object", + "properties": { + "result": { + "$ref": "ReviewReplyResult" + } + } + }, "Season": { "id": "Season", "type": "object", @@ -781,7 +881,7 @@ "properties": { "desiredExpiryTimeMillis": { "type": "string", - "description": "The desired next expiry time for the subscription in milliseconds since Epoch. The given time must be after the current expiry time for the subscription.", + "description": "The desired next expiry time to assign to the subscription, in milliseconds since the Epoch. The given time must be later/greater than the current expiry time for the subscription.", "format": "int64" }, "expectedExpiryTimeMillis": { @@ -802,7 +902,7 @@ }, "cancelReason": { "type": "integer", - "description": "The cancel reason of the subscription, if the subscription is not auto renewing. Possible values are: \n- User cancelled the subscription \n- Subscription was cancelled by the system, for example because of a billing problem", + "description": "The reason why a subscription was cancelled or is not auto-renewing. Possible values are: \n- User cancelled the subscription \n- Subscription was cancelled by the system, for example because of a billing problem", "format": "int32" }, "countryCode": { @@ -815,7 +915,7 @@ }, "expiryTimeMillis": { "type": "string", - "description": "Time at which the subscription will expire, in milliseconds since Epoch.", + "description": "Time at which the subscription will expire, in milliseconds since the Epoch.", "format": "int64" }, "kind": { @@ -830,7 +930,7 @@ }, "priceAmountMicros": { "type": "string", - "description": "Price of the subscription, not including tax. Price is expressed in micro-units, where 1,000,000 micro-units equal one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros is 1990000.", + "description": "Price of the subscription, not including tax. Price is expressed in micro-units, where 1,000,000 micro-units represents one unit of the currency. For example, if the subscription price is €1.99, price_amount_micros is 1990000.", "format": "int64" }, "priceCurrencyCode": { @@ -839,7 +939,7 @@ }, "startTimeMillis": { "type": "string", - "description": "Time at which the subscription was granted, in milliseconds since Epoch.", + "description": "Time at which the subscription was granted, in milliseconds since the Epoch.", "format": "int64" } } @@ -883,6 +983,20 @@ } } }, + "Timestamp": { + "id": "Timestamp", + "type": "object", + "properties": { + "nanos": { + "type": "integer", + "format": "int32" + }, + "seconds": { + "type": "string", + "format": "int64" + } + } + }, "TokenPagination": { "id": "TokenPagination", "type": "object", @@ -931,6 +1045,47 @@ } } } + }, + "UserComment": { + "id": "UserComment", + "type": "object", + "properties": { + "androidOsVersion": { + "type": "integer", + "description": "Integer Android SDK version of the user's device at the time the review was written, e.g. 23 is Marshmallow. May be absent.", + "format": "int32" + }, + "appVersionCode": { + "type": "integer", + "description": "Integer version code of the app as installed at the time the review was written. May be absent.", + "format": "int32" + }, + "appVersionName": { + "type": "string", + "description": "String version name of the app as installed at the time the review was written. May be absent." + }, + "device": { + "type": "string", + "description": "Codename for the reviewer's device, e.g. klte, flounder. May be absent." + }, + "lastModified": { + "$ref": "Timestamp", + "description": "The last time at which this comment was updated." + }, + "reviewerLanguage": { + "type": "string", + "description": "Language code for the reviewer. This is taken from the device settings so is not guaranteed to match the language the review is written in. May be absent." + }, + "starRating": { + "type": "integer", + "description": "The star rating associated with the review, from 1 to 5.", + "format": "int32" + }, + "text": { + "type": "string", + "description": "The content of the comment, i.e. review body. In some cases users have been able to write a review with separate title and body; in those cases the title and body are concatenated and separated by a tab character." + } + } } }, "resources": { @@ -3114,6 +3269,108 @@ } } } + }, + "reviews": { + "methods": { + "get": { + "id": "androidpublisher.reviews.get", + "path": "{packageName}/reviews/{reviewId}", + "httpMethod": "GET", + "description": "Returns a single review.", + "parameters": { + "packageName": { + "type": "string", + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "required": true, + "location": "path" + }, + "reviewId": { + "type": "string", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "packageName", + "reviewId" + ], + "response": { + "$ref": "Review" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "list": { + "id": "androidpublisher.reviews.list", + "path": "{packageName}/reviews", + "httpMethod": "GET", + "description": "Returns a list of reviews.", + "parameters": { + "maxResults": { + "type": "integer", + "format": "uint32", + "location": "query" + }, + "packageName": { + "type": "string", + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "required": true, + "location": "path" + }, + "startIndex": { + "type": "integer", + "format": "uint32", + "location": "query" + }, + "token": { + "type": "string", + "location": "query" + } + }, + "parameterOrder": [ + "packageName" + ], + "response": { + "$ref": "ReviewsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + }, + "reply": { + "id": "androidpublisher.reviews.reply", + "path": "{packageName}/reviews/{reviewId}:reply", + "httpMethod": "POST", + "description": "Reply to a single review, or update an existing reply.", + "parameters": { + "packageName": { + "type": "string", + "description": "Unique identifier for the Android app for which we want reviews; for example, \"com.spiffygame\".", + "required": true, + "location": "path" + }, + "reviewId": { + "type": "string", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "packageName", + "reviewId" + ], + "request": { + "$ref": "ReviewsReplyRequest" + }, + "response": { + "$ref": "ReviewsReplyResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/androidpublisher" + ] + } + } } } } diff --git a/etc/api/api-list.yaml b/etc/api/api-list.yaml index 80d6c47967..cdbc8ab0be 100644 --- a/etc/api/api-list.yaml +++ b/etc/api/api-list.yaml @@ -3,9 +3,13 @@ # DO NOT EDIT !!! api: list: + acceleratedmobilepageurl: + - v1 adexchangebuyer: - v1.3 - v1.4 + adexchangebuyer2: + - v2beta1 adexchangeseller: - v2.0 admin: @@ -17,17 +21,22 @@ api: - v4.1 analytics: - v3 + analyticsreporting: + - v4 androidenterprise: - v1 androidpublisher: - v2 appengine: + - v1 - v1beta4 - v1beta5 appsactivity: - v1 appstate: - v1 + audit: + - v1 autoscaler: - v1beta2 bigquery: @@ -44,8 +53,12 @@ api: - v1 cloudbilling: - v1 + cloudbuild: + - v1 clouddebugger: - v2 + clouderrorreporting: + - v1beta1 cloudlatencytest: - v2 cloudmonitoring: @@ -77,7 +90,9 @@ api: dataproc: - v1 datastore: + - v1 - v1beta2 + - v1beta3 deploymentmanager: - v2 - v2beta2 @@ -86,6 +101,8 @@ api: - v2.2 - v2.3 - v2.4 + - v2.5 + - v2.6 discovery: - v1 dns: @@ -97,10 +114,13 @@ api: drive: - v2 - v3 + firebaserules: + - v1 fitness: - v1 freebase: - v1 + - v1sandbox fusiontables: - v2 games: @@ -125,12 +145,16 @@ api: - v3 kgsearch: - v1 + language: + - v1beta1 licensing: - v1 logging: - v2beta1 manager: - v1beta2 + mapsengine: + - v1 mirror: - v1 monitoring: @@ -166,14 +190,26 @@ api: - v1sandbox resourceviews: - v1beta2 + runtimeconfig: + - v1beta1 + safebrowsing: + - v4 script: - v1 + servicecontrol: + - v1 + servicemanagement: + - v1 serviceregistry: - alpha + sheets: + - v4 siteverification: - v1 spectrum: - v1explorer + speech: + - v1beta1 sqladmin: - v1beta4 storage: @@ -192,6 +228,8 @@ api: - v2 urlshortener: - v1 + vision: + - v1 webfonts: - v1 webmasters: diff --git a/etc/api/appengine/v1/appengine-api.json b/etc/api/appengine/v1/appengine-api.json new file mode 100644 index 0000000000..936867df1b --- /dev/null +++ b/etc/api/appengine/v1/appengine-api.json @@ -0,0 +1,2041 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/XwXcNyhHrL2U4OFiJYzAKkeZ6k4\"", + "discoveryVersion": "v1", + "id": "appengine:v1", + "name": "appengine", + "version": "v1", + "revision": "20160802", + "title": "Google App Engine Admin API", + "description": "Provisions and manages App Engine applications.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "documentationLink": "https://cloud.google.com/appengine/docs/admin-api/", + "protocol": "rest", + "baseUrl": "https://appengine.googleapis.com/", + "basePath": "", + "rootUrl": "https://appengine.googleapis.com/", + "servicePath": "", + "batchPath": "batch", + "version_module": true, + "parameters": { + "access_token": { + "type": "string", + "description": "OAuth access token.", + "location": "query" + }, + "alt": { + "type": "string", + "description": "Data format for response.", + "default": "json", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query" + }, + "bearer_token": { + "type": "string", + "description": "OAuth bearer token.", + "location": "query" + }, + "callback": { + "type": "string", + "description": "JSONP", + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "pp": { + "type": "boolean", + "description": "Pretty-print response.", + "default": "true", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query" + }, + "upload_protocol": { + "type": "string", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query" + }, + "uploadType": { + "type": "string", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query" + }, + "$.xgafv": { + "type": "string", + "description": "V1 error format.", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + } + } + } + }, + "schemas": { + "Operation": { + "id": "Operation", + "type": "object", + "description": "This resource represents a long-running operation that is the result of a network API call.", + "properties": { + "name": { + "type": "string", + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `operations/some/unique/name`." + }, + "metadata": { + "type": "object", + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + }, + "done": { + "type": "boolean", + "description": "If the value is `false`, it means the operation is still in progress. If true, the operation is completed, and either `error` or `response` is available." + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure." + }, + "response": { + "type": "object", + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + } + } + }, + "Status": { + "id": "Status", + "type": "object", + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be: - 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` which 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 purpose. - 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.", + "properties": { + "code": { + "type": "integer", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32" + }, + "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": { + "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.", + "items": { + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + } + } + } + }, + "ListOperationsResponse": { + "id": "ListOperationsResponse", + "type": "object", + "description": "The response message for Operations.ListOperations.", + "properties": { + "operations": { + "type": "array", + "description": "A list of operations that matches the specified filter in the request.", + "items": { + "$ref": "Operation" + } + }, + "nextPageToken": { + "type": "string", + "description": "The standard List next-page token." + } + } + }, + "Application": { + "id": "Application", + "type": "object", + "description": "An Application resource contains the top-level configuration of an App Engine application.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Application resource in the API. Example: `apps/myapp`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: `myapp`." + }, + "dispatchRules": { + "type": "array", + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. @OutputOnly", + "items": { + "$ref": "UrlDispatchRule" + } + }, + "authDomain": { + "type": "string", + "description": "Google Apps authentication domain that controls which users can access this application. Defaults to open access for any Google Account." + }, + "locationId": { + "type": "string", + "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 US `europe-west` - Western Europe `us-east1` - Eastern US" + }, + "codeBucket": { + "type": "string", + "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" + }, + "defaultCookieExpiration": { + "type": "string", + "description": "Cookie expiration policy for this application. @OutputOnly" + }, + "defaultHostname": { + "type": "string", + "description": "Hostname used to reach this application, as resolved by App Engine. @OutputOnly" + }, + "defaultBucket": { + "type": "string", + "description": "Google Cloud Storage bucket that can be used by this application to store content. @OutputOnly" + } + } + }, + "UrlDispatchRule": { + "id": "UrlDispatchRule", + "type": "object", + "description": "Rules to match an HTTP request and dispatch that request to a service.", + "properties": { + "domain": { + "type": "string", + "description": "Domain name to match against. The wildcard \"`*`\" is supported if specified before a period: \"`*.`\". Defaults to matching all domains: \"`*`\"." + }, + "path": { + "type": "string", + "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." + }, + "service": { + "type": "string", + "description": "Resource ID of a service in this application that should serve the matched request. The service must already exist. Example: `default`." + } + } + }, + "RepairApplicationRequest": { + "id": "RepairApplicationRequest", + "type": "object", + "description": "Request message for 'Applications.RepairApplication'." + }, + "ListServicesResponse": { + "id": "ListServicesResponse", + "type": "object", + "description": "Response message for `Services.ListServices`.", + "properties": { + "services": { + "type": "array", + "description": "The services belonging to the requested application.", + "items": { + "$ref": "Service" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results." + } + } + }, + "Service": { + "id": "Service", + "type": "object", + "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.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Service resource in the API. Example: `apps/myapp/services/default`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Relative name of the service within the application. Example: `default`. @OutputOnly" + }, + "split": { + "$ref": "TrafficSplit", + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the service." + } + } + }, + "TrafficSplit": { + "id": "TrafficSplit", + "type": "object", + "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", + "properties": { + "shardBy": { + "type": "string", + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "enum": [ + "UNSPECIFIED", + "COOKIE", + "IP" + ] + }, + "allocations": { + "type": "object", + "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.", + "additionalProperties": { + "type": "number", + "format": "double" + } + } + } + }, + "ListVersionsResponse": { + "id": "ListVersionsResponse", + "type": "object", + "description": "Response message for `Versions.ListVersions`.", + "properties": { + "versions": { + "type": "array", + "description": "The versions belonging to the requested service.", + "items": { + "$ref": "Version" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results." + } + } + }, + "Version": { + "id": "Version", + "type": "object", + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Version resource in the API. Example: `apps/myapp/services/default/versions/v1`. @OutputOnly" + }, + "id": { + "type": "string", + "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-\"." + }, + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "basicScaling": { + "$ref": "BasicScaling", + "description": "A service with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + }, + "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." + }, + "inboundServices": { + "type": "array", + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", + "enumDescriptions": [ + "Not specified.", + "Allows an application to receive mail.", + "Allows an application to receive email-bound notifications.", + "Allows an application to receive error stanzas.", + "Allows an application to receive instant messages.", + "Allows an application to receive user subscription POSTs.", + "Allows an application to receive a user's chat presence.", + "Registers an application for notifications when a client connects or disconnects from a channel.", + "Enables warmup requests." + ], + "items": { + "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" + ] + } + }, + "instanceClass": { + "type": "string", + "description": "Instance class that is used to run this version. Valid values are: * AutomaticScaling: `F1`, `F2`, `F4`, `F4_1G` * ManualScaling or BasicScaling: `B1`, `B2`, `B4`, `B8`, `B4_1G` Defaults to `F1` for AutomaticScaling and `B1` for ManualScaling or BasicScaling." + }, + "network": { + "$ref": "Network", + "description": "Extra network settings. Only applicable for VM runtimes." + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." + }, + "runtime": { + "type": "string", + "description": "Desired runtime. Example: `python27`." + }, + "threadsafe": { + "type": "boolean", + "description": "Whether multiple requests can be dispatched to this version at once." + }, + "vm": { + "type": "boolean", + "description": "Whether to deploy this version in a container on a virtual machine." + }, + "betaSettings": { + "type": "object", + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "additionalProperties": { + "type": "string" + } + }, + "env": { + "type": "string", + "description": "App Engine execution environment for this version. Defaults to `standard`." + }, + "servingStatus": { + "type": "string", + "description": "Current serving status of this version. Only the versions with a `SERVING` status create instances and can be billed. `SERVING_STATUS_UNSPECIFIED` is an invalid value. Defaults to `SERVING`.", + "enum": [ + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ] + }, + "createdBy": { + "type": "string", + "description": "Email address of the user who created this version. @OutputOnly" + }, + "createTime": { + "type": "string", + "description": "Time that this version was created. @OutputOnly" + }, + "diskUsageBytes": { + "type": "string", + "description": "Total size in bytes of all the files that are included in this version and curerntly hosted on the App Engine disk. @OutputOnly", + "format": "int64" + }, + "handlers": { + "type": "array", + "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" + } + }, + "errorHandlers": { + "type": "array", + "description": "Custom static error pages. Limited to 10KB per page. Only returned in `GET` requests if `view=FULL` is set.", + "items": { + "$ref": "ErrorHandler" + } + }, + "libraries": { + "type": "array", + "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" + } + }, + "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." + }, + "envVariables": { + "type": "object", + "description": "Environment variables available to the application. Only returned in `GET` requests if `view=FULL` is set.", + "additionalProperties": { + "type": "string" + } + }, + "defaultExpiration": { + "type": "string", + "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." + }, + "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." + }, + "nobuildFilesRegex": { + "type": "string", + "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." + }, + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version. Only returned in `GET` requests if `view=FULL` is set." + }, + "versionUrl": { + "type": "string", + "description": "Serving URL for this version. Example: \"https://myversion-dot-myservice-dot-myapp.appspot.com\" @OutputOnly" + } + } + }, + "AutomaticScaling": { + "id": "AutomaticScaling", + "type": "object", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "properties": { + "coolDownPeriod": { + "type": "string", + "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." + }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "maxConcurrentRequests": { + "type": "integer", + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Defaults to a runtime-specific value.", + "format": "int32" + }, + "maxIdleInstances": { + "type": "integer", + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32" + }, + "maxTotalInstances": { + "type": "integer", + "description": "Maximum number of instances that should be started to handle requests.", + "format": "int32" + }, + "maxPendingLatency": { + "type": "string", + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it." + }, + "minIdleInstances": { + "type": "integer", + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.", + "format": "int32" + }, + "minTotalInstances": { + "type": "integer", + "description": "Minimum number of instances that should be maintained for this version.", + "format": "int32" + }, + "minPendingLatency": { + "type": "string", + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + } + } + }, + "CpuUtilization": { + "id": "CpuUtilization", + "type": "object", + "description": "Target scaling by CPU usage.", + "properties": { + "aggregationWindowLength": { + "type": "string", + "description": "Period of time over which CPU utilization is calculated." + }, + "targetUtilization": { + "type": "number", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double" + } + } + }, + "RequestUtilization": { + "id": "RequestUtilization", + "type": "object", + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "properties": { + "targetRequestCountPerSecond": { + "type": "integer", + "description": "Target requests per second.", + "format": "int32" + }, + "targetConcurrentRequests": { + "type": "integer", + "description": "Target number of concurrent requests.", + "format": "int32" + } + } + }, + "DiskUtilization": { + "id": "DiskUtilization", + "type": "object", + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "properties": { + "targetWriteBytesPerSecond": { + "type": "integer", + "description": "Target bytes written per second.", + "format": "int32" + }, + "targetWriteOpsPerSecond": { + "type": "integer", + "description": "Target ops written per second.", + "format": "int32" + }, + "targetReadBytesPerSecond": { + "type": "integer", + "description": "Target bytes read per second.", + "format": "int32" + }, + "targetReadOpsPerSecond": { + "type": "integer", + "description": "Target ops read per seconds.", + "format": "int32" + } + } + }, + "NetworkUtilization": { + "id": "NetworkUtilization", + "type": "object", + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "properties": { + "targetSentBytesPerSecond": { + "type": "integer", + "description": "Target bytes sent per second.", + "format": "int32" + }, + "targetSentPacketsPerSecond": { + "type": "integer", + "description": "Target packets sent per second.", + "format": "int32" + }, + "targetReceivedBytesPerSecond": { + "type": "integer", + "description": "Target bytes received per second.", + "format": "int32" + }, + "targetReceivedPacketsPerSecond": { + "type": "integer", + "description": "Target packets received per second.", + "format": "int32" + } + } + }, + "BasicScaling": { + "id": "BasicScaling", + "type": "object", + "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.", + "properties": { + "idleTimeout": { + "type": "string", + "description": "Duration of time after the last request that an instance must wait before the instance is shut down." + }, + "maxInstances": { + "type": "integer", + "description": "Maximum number of instances to create for this version.", + "format": "int32" + } + } + }, + "ManualScaling": { + "id": "ManualScaling", + "type": "object", + "description": "A service with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "properties": { + "instances": { + "type": "integer", + "description": "Number of instances to assign to the service at the start. This number can later be altered by using the [Modules API](https://cloud.google.com/appengine/docs/python/modules/functions) `set_num_instances()` function.", + "format": "int32" + } + } + }, + "Network": { + "id": "Network", + "type": "object", + "description": "Extra network settings. Only applicable for VM runtimes.", + "properties": { + "forwardedPorts": { + "type": "array", + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "items": { + "type": "string" + } + }, + "instanceTag": { + "type": "string", + "description": "Tag to apply to the VM instance during creation." + }, + "name": { + "type": "string", + "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path. Defaults to `default`." + } + } + }, + "Resources": { + "id": "Resources", + "type": "object", + "description": "Machine resources for a version.", + "properties": { + "cpu": { + "type": "number", + "description": "Number of CPU cores needed.", + "format": "double" + }, + "diskGb": { + "type": "number", + "description": "Disk size (GB) needed.", + "format": "double" + }, + "memoryGb": { + "type": "number", + "description": "Memory (GB) needed.", + "format": "double" + } + } + }, + "UrlMap": { + "id": "UrlMap", + "type": "object", + "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.", + "properties": { + "urlRegex": { + "type": "string", + "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." + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + }, + "securityLevel": { + "type": "string", + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ] + }, + "login": { + "type": "string", + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ] + }, + "authFailAction": { + "type": "string", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ] + }, + "redirectHttpResponseCode": { + "type": "string", + "description": "`30x` code to use when performing redirects for the `secure` field. Defaults to `302`.", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ] + } + } + }, + "StaticFilesHandler": { + "id": "StaticFilesHandler", + "type": "object", + "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.", + "properties": { + "path": { + "type": "string", + "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." + }, + "uploadPathRegex": { + "type": "string", + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler." + }, + "httpHeaders": { + "type": "object", + "description": "HTTP headers to use for all responses from these URLs.", + "additionalProperties": { + "type": "string" + } + }, + "mimeType": { + "type": "string", + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension." + }, + "expiration": { + "type": "string", + "description": "Time a static file served by this handler should be cached by web proxies and browsers." + }, + "requireMatchingFile": { + "type": "boolean", + "description": "Whether this handler should match the request if the file referenced by the handler does not exist." + }, + "applicationReadable": { + "type": "boolean", + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas." + } + } + }, + "ScriptHandler": { + "id": "ScriptHandler", + "type": "object", + "description": "Executes a script to handle the request that matches the URL pattern.", + "properties": { + "scriptPath": { + "type": "string", + "description": "Path to the script from the application root directory." + } + } + }, + "ApiEndpointHandler": { + "id": "ApiEndpointHandler", + "type": "object", + "description": "Uses Google Cloud Endpoints to handle requests.", + "properties": { + "scriptPath": { + "type": "string", + "description": "Path to the script from the application root directory." + } + } + }, + "ErrorHandler": { + "id": "ErrorHandler", + "type": "object", + "description": "Custom static error page to be served when an error occurs.", + "properties": { + "errorCode": { + "type": "string", + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ] + }, + "staticFile": { + "type": "string", + "description": "Static file content to be served for this error." + }, + "mimeType": { + "type": "string", + "description": "MIME type of file. Defaults to `text/html`." + } + } + }, + "Library": { + "id": "Library", + "type": "object", + "description": "Third-party Python runtime library that is required by the application.", + "properties": { + "name": { + "type": "string", + "description": "Name of the library. Example: \"django\"." + }, + "version": { + "type": "string", + "description": "Version of the library to select, or \"latest\"." + } + } + }, + "ApiConfigHandler": { + "id": "ApiConfigHandler", + "type": "object", + "description": "[Google Cloud Endpoints](https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "properties": { + "authFailAction": { + "type": "string", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ] + }, + "login": { + "type": "string", + "description": "Level of login required to access this resource. Defaults to `optional`.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ] + }, + "script": { + "type": "string", + "description": "Path to the script from the application root directory." + }, + "securityLevel": { + "type": "string", + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ] + }, + "url": { + "type": "string", + "description": "URL to serve the endpoint at." + } + } + }, + "HealthCheck": { + "id": "HealthCheck", + "type": "object", + "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.", + "properties": { + "disableHealthCheck": { + "type": "boolean", + "description": "Whether to explicitly disable health checks for this instance." + }, + "host": { + "type": "string", + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"" + }, + "healthyThreshold": { + "type": "integer", + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32" + }, + "unhealthyThreshold": { + "type": "integer", + "description": "Number of consecutive failed health checks required before removing traffic.", + "format": "uint32" + }, + "restartThreshold": { + "type": "integer", + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32" + }, + "checkInterval": { + "type": "string", + "description": "Interval between health checks." + }, + "timeout": { + "type": "string", + "description": "Time before the health check is considered failed." + } + } + }, + "Deployment": { + "id": "Deployment", + "type": "object", + "description": "Code and application artifacts used to deploy a version to App Engine.", + "properties": { + "files": { + "type": "object", + "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.", + "additionalProperties": { + "$ref": "FileInfo" + } + }, + "container": { + "$ref": "ContainerInfo", + "description": "A Docker image that App Engine uses to run the version. Only applicable for instances in App Engine flexible environment." + }, + "zip": { + "$ref": "ZipInfo", + "description": "The zip file for this deployment, if this is a zip deployment." + } + } + }, + "FileInfo": { + "id": "FileInfo", + "type": "object", + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "properties": { + "sourceUrl": { + "type": "string", + "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/\\/\\'." + }, + "sha1Sum": { + "type": "string", + "description": "The SHA1 hash of the file, in hex." + }, + "mimeType": { + "type": "string", + "description": "The MIME type of the file. Defaults to the value from Google Cloud Storage." + } + } + }, + "ContainerInfo": { + "id": "ContainerInfo", + "type": "object", + "description": "Docker image that is used to start a VM container for the version you deploy.", + "properties": { + "image": { + "type": "string", + "description": "URI to the hosted container image in a Docker repository. 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\"" + } + } + }, + "ZipInfo": { + "id": "ZipInfo", + "type": "object", + "properties": { + "sourceUrl": { + "type": "string", + "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/\\/\\'." + }, + "filesCount": { + "type": "integer", + "description": "An estimate of the number of files in a zip for a zip deployment. If set, must be greater than or equal to the actual number of files. Used for optimizing performance; if not provided, deployment may be slow.", + "format": "int32" + } + } + }, + "ListInstancesResponse": { + "id": "ListInstancesResponse", + "type": "object", + "description": "Response message for `Instances.ListInstances`.", + "properties": { + "instances": { + "type": "array", + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results." + } + } + }, + "Instance": { + "id": "Instance", + "type": "object", + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Instance resource in the API. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Relative name of the instance within the version. Example: `instance-1`. @OutputOnly" + }, + "appEngineRelease": { + "type": "string", + "description": "App Engine release this instance is running on. @OutputOnly" + }, + "availability": { + "type": "string", + "description": "Availability of the instance. @OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ] + }, + "vmName": { + "type": "string", + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmZoneName": { + "type": "string", + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmId": { + "type": "string", + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "startTime": { + "type": "string", + "description": "Time that this instance was started. @OutputOnly" + }, + "requests": { + "type": "integer", + "description": "Number of requests since this instance was started. @OutputOnly", + "format": "int32" + }, + "errors": { + "type": "integer", + "description": "Number of errors since this instance was started. @OutputOnly", + "format": "int32" + }, + "qps": { + "type": "number", + "description": "Average queries per second (QPS) over the last minute. @OutputOnly", + "format": "float" + }, + "averageLatency": { + "type": "integer", + "description": "Average latency (ms) over the last minute. @OutputOnly", + "format": "int32" + }, + "memoryUsage": { + "type": "string", + "description": "Total memory in use (bytes). @OutputOnly", + "format": "int64" + }, + "vmStatus": { + "type": "string", + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmDebugEnabled": { + "type": "boolean", + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment. @OutputOnly" + } + } + }, + "DebugInstanceRequest": { + "id": "DebugInstanceRequest", + "type": "object", + "description": "Request message for `Instances.DebugInstance`." + }, + "ListLocationsResponse": { + "id": "ListLocationsResponse", + "type": "object", + "description": "The response message for LocationService.ListLocations.", + "properties": { + "locations": { + "type": "array", + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + } + }, + "nextPageToken": { + "type": "string", + "description": "The standard List next-page token." + } + } + }, + "Location": { + "id": "Location", + "type": "object", + "description": "A resource that represents Google Cloud Platform location.", + "properties": { + "name": { + "type": "string", + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`" + }, + "locationId": { + "type": "string", + "description": "The cononical id for this location. For example: `\"us-east1\"`." + }, + "labels": { + "type": "object", + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "additionalProperties": { + "type": "string" + } + }, + "metadata": { + "type": "object", + "description": "Service-specific metadata. For example the available capacity at the given location.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + } + } + }, + "OperationMetadata": { + "id": "OperationMetadata", + "type": "object", + "description": "Metadata for the given google.longrunning.Operation.", + "properties": { + "operationType": { + "type": "string", + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\". @OutputOnly" + }, + "insertTime": { + "type": "string", + "description": "Timestamp that this operation was created. @OutputOnly" + }, + "endTime": { + "type": "string", + "description": "Timestamp that this operation completed. @OutputOnly" + }, + "user": { + "type": "string", + "description": "User who requested this operation. @OutputOnly" + }, + "target": { + "type": "string", + "description": "Name of the resource that this operation is acting on. Example: `apps/myapp/modules/default`. @OutputOnly" + }, + "method": { + "type": "string", + "description": "API method that initiated this operation. Example: `google.appengine.v1beta4.Version.CreateVersion`. @OutputOnly" + } + } + }, + "OperationMetadataV1Beta5": { + "id": "OperationMetadataV1Beta5", + "type": "object", + "description": "Metadata for the given google.longrunning.Operation.", + "properties": { + "method": { + "type": "string", + "description": "API method name that initiated this operation. Example: `google.appengine.v1beta5.Version.CreateVersion`. @OutputOnly" + }, + "insertTime": { + "type": "string", + "description": "Timestamp that this operation was created. @OutputOnly" + }, + "endTime": { + "type": "string", + "description": "Timestamp that this operation completed. @OutputOnly" + }, + "user": { + "type": "string", + "description": "User who requested this operation. @OutputOnly" + }, + "target": { + "type": "string", + "description": "Name of the resource that this operation is acting on. Example: `apps/myapp/services/default`. @OutputOnly" + } + } + }, + "OperationMetadataV1": { + "id": "OperationMetadataV1", + "type": "object", + "description": "Metadata for the given google.longrunning.Operation.", + "properties": { + "method": { + "type": "string", + "description": "API method that initiated this operation. Example: `google.appengine.v1.Versions.CreateVersion`. @OutputOnly" + }, + "insertTime": { + "type": "string", + "description": "Time that this operation was created. @OutputOnly" + }, + "endTime": { + "type": "string", + "description": "Time that this operation completed. @OutputOnly" + }, + "user": { + "type": "string", + "description": "User who requested this operation. @OutputOnly" + }, + "target": { + "type": "string", + "description": "Name of the resource that this operation is acting on. Example: `apps/myapp/services/default`. @OutputOnly" + } + } + }, + "LocationMetadata": { + "id": "LocationMetadata", + "type": "object", + "description": "Metadata for the given google.cloud.location.Location.", + "properties": { + "standardEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Standard Environment is available in the given location. @OutputOnly" + }, + "flexibleEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Flexible Environment is available in the given location. @OutputOnly" + } + } + } + }, + "resources": { + "apps": { + "methods": { + "get": { + "id": "appengine.apps.get", + "path": "v1/apps/{appsId}", + "httpMethod": "GET", + "description": "Gets information about an application.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the Application resource to get. Example: `apps/myapp`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "Application" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "repair": { + "id": "appengine.apps.repair", + "path": "v1/apps/{appsId}:repair", + "httpMethod": "POST", + "description": "Recreates the required App Engine features for the application in your project, for example a Cloud Storage bucket or App Engine service account. Use this method if you receive an error message about a missing feature, for example \"*Error retrieving the App Engine service account*\".", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the application to repair. Example: `apps/myapp`", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId" + ], + "request": { + "$ref": "RepairApplicationRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "operations": { + "methods": { + "get": { + "id": "appengine.apps.operations.get", + "path": "v1/apps/{appsId}/operations/{operationsId}", + "httpMethod": "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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. The name of the operation resource.", + "required": true, + "location": "path" + }, + "operationsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "operationsId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "id": "appengine.apps.operations.list", + "path": "v1/apps/{appsId}/operations", + "httpMethod": "GET", + "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`.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. The name of the operation collection.", + "required": true, + "location": "path" + }, + "filter": { + "type": "string", + "description": "The standard list filter.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "The standard list page size.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The standard list page token.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListOperationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + }, + "services": { + "methods": { + "list": { + "id": "appengine.apps.services.list", + "path": "v1/apps/{appsId}/services", + "httpMethod": "GET", + "description": "Lists all the services in the application.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `parent`. Name of the parent Application resource. Example: `apps/myapp`.", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListServicesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.services.get", + "path": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "GET", + "description": "Gets the current configuration of the specified service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "Service" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "id": "appengine.apps.services.patch", + "path": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "PATCH", + "description": "Updates the configuration of the specified service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/services/default`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "updateMask": { + "type": "string", + "description": "Standard field mask for the set of fields to be updated.", + "location": "query" + }, + "migrateTraffic": { + "type": "boolean", + "description": "Set to `true` to gradually shift traffic from one version to another single version. By default, traffic is shifted immediately. For gradual traffic migration, the target version must be located within instances that are configured for both [warmup requests](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#inboundservicetype) and [automatic scaling](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services.versions#automaticscaling). You must specify the [`shardBy`](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see [Migrating and Splitting Traffic](https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "request": { + "$ref": "Service" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "id": "appengine.apps.services.delete", + "path": "v1/apps/{appsId}/services/{servicesId}", + "httpMethod": "DELETE", + "description": "Deletes the specified service and all enclosed versions.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "versions": { + "methods": { + "list": { + "id": "appengine.apps.services.versions.list", + "path": "v1/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "GET", + "description": "Lists the versions of a service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `parent`. Name of the parent Service resource. Example: `apps/myapp/services/default`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "view": { + "type": "string", + "description": "Controls the set of fields returned in the `List` response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "response": { + "$ref": "ListVersionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.services.versions.get", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "view": { + "type": "string", + "description": "Controls the set of fields returned in the `Get` response.", + "enum": [ + "BASIC", + "FULL" + ], + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "response": { + "$ref": "Version" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "id": "appengine.apps.services.versions.create", + "path": "v1/apps/{appsId}/services/{servicesId}/versions", + "httpMethod": "POST", + "description": "Deploys code and resource files to a new version.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `parent`. Name of the parent resource to create this version under. Example: `apps/myapp/services/default`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId" + ], + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "patch": { + "id": "appengine.apps.services.versions.patch", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "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: * [`serving_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. * [`instance_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. * [`automatic_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. * [`automatic_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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/services/default/versions/1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "updateMask": { + "type": "string", + "description": "Standard field mask for the set of fields to be updated.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "request": { + "$ref": "Version" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "id": "appengine.apps.services.versions.delete", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}", + "httpMethod": "DELETE", + "description": "Deletes an existing Version resource.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + }, + "resources": { + "instances": { + "methods": { + "list": { + "id": "appengine.apps.services.versions.instances.list", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "description": "Lists the instances of a version.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `parent`. Name of the parent Version resource. Example: `apps/myapp/services/default/versions/v1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `parent`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.services.versions.instances.get", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "GET", + "description": "Gets instance information.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "id": "appengine.apps.services.versions.instances.delete", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "description": "Stops a running instance.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "debug": { + "id": "appengine.apps.services.versions.instances.debug", + "path": "v1/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } + }, + "locations": { + "methods": { + "list": { + "id": "appengine.apps.locations.list", + "path": "v1/apps/{appsId}/locations", + "httpMethod": "GET", + "description": "Lists information about the supported locations for this service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "required": true, + "location": "path" + }, + "filter": { + "type": "string", + "description": "The standard list filter.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "The standard list page size.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The standard list page token.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.locations.get", + "path": "v1/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "description": "Get information about a location.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Resource name for the location.", + "required": true, + "location": "path" + }, + "locationsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "locationsId" + ], + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } + } + } + } +} diff --git a/etc/api/appengine/v1beta4/appengine-api.json b/etc/api/appengine/v1beta4/appengine-api.json index c67e5134fc..06a6c7dda1 100644 --- a/etc/api/appengine/v1beta4/appengine-api.json +++ b/etc/api/appengine/v1beta4/appengine-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Ne9agwVqzB7mhydEKzb51sWzgug\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/b39BKUXeyRHQFhweQbDoJSGyqUg\"", "discoveryVersion": "v1", "id": "appengine:v1beta4", "name": "appengine", "version": "v1beta4", - "revision": "20160314", + "revision": "20160802", "title": "Google App Engine Admin API", "description": "Provisions and manages App Engine applications.", "ownerDomain": "google.com", @@ -113,46 +113,46 @@ "Application": { "id": "Application", "type": "object", - "description": "An Application contains the top-level configuration of an App Engine application.", + "description": "An Application resource contains the top-level configuration of an App Engine application.", "properties": { "name": { "type": "string", - "description": "The full path to the application in the API. Example: \"apps/myapp\". @OutputOnly" + "description": "Full path to the Application resource in the API. Example: `apps/myapp`. @OutputOnly" }, "id": { "type": "string", - "description": "The relative name/path of the application. Example: \"myapp\"." + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: `myapp`." }, "dispatchRules": { "type": "array", - "description": "HTTP path dispatch rules for requests to the app that do not explicitly target a module or version. The rules are order-dependent. @OutputOnly", + "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" } }, "authDomain": { "type": "string", - "description": "If set, only users from the specified Google Apps authentication domain may access the application. If not set, any Google Account may access the application." + "description": "Google Apps authentication domain that controls which users can access this application. Defaults to open access for any Google Account." }, "location": { "type": "string", - "description": "The location from which the application will be run. Application instances will run out of data centers in the chosen location and all of the application's End User Content will be stored at rest. The default is \"us-central\". Choices are: \"us-central\" - Central US \"europe-west\" - Western Europe \"us-east1\" - Eastern US" + "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 US `europe-west` - Western Europe `us-east1` - Eastern US" }, "codeBucket": { "type": "string", - "description": "A Google Cloud Storage bucket which can be used for storing files associated with an application. This bucket is associated with the application and can be used by the gcloud deployment commands. @OutputOnly" + "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" }, "defaultCookieExpiration": { "type": "string", - "description": "Determines the cookie expiration policy for the application. @OutputOnly" + "description": "Cookie expiration policy for this application. @OutputOnly" }, "defaultHostname": { "type": "string", - "description": "The hostname used to reach the application, as resolved by App Engine. @OutputOnly" + "description": "Hostname used to reach the application, as resolved by App Engine. @OutputOnly" }, "defaultBucket": { "type": "string", - "description": "A Google Cloud Storage bucket which can be used by the application to store content. @OutputOnly" + "description": "Google Cloud Storage bucket that can be used by this application to store content. @OutputOnly" } } }, @@ -163,746 +163,15 @@ "properties": { "domain": { "type": "string", - "description": "The domain name to match on. Supports '*' (glob) wildcarding on the left-hand side of a '.'. If empty, all domains will be matched (the same as '*')." + "description": "Domain name to match against. The wildcard \"`*`\" is supported if specified before a period: \"`*.`\". Defaults to matching all domains: \"`*`\"." }, "path": { "type": "string", - "description": "The pathname within the host. This must start with a '/'. A single '*' (glob) can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters." + "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." }, "module": { "type": "string", - "description": "The resource id of a Module in this application that should service the matched request. The Module must already exist. Example: \"default\"." - } - } - }, - "Version": { - "id": "Version", - "type": "object", - "description": "A Version is a specific set of source code and configuration files deployed to a module.", - "properties": { - "name": { - "type": "string", - "description": "The full path to the Version resource in the API. Example: \"apps/myapp/modules/default/versions/v1\". @OutputOnly" - }, - "id": { - "type": "string", - "description": "The relative name/path of the Version within the module. Example: \"v1\". Version specifiers can contain lowercase letters, digits, and hyphens. It cannot begin with the prefix `ah-` and the names `default` and `latest` are reserved and cannot be used." - }, - "automaticScaling": { - "$ref": "AutomaticScaling", - "description": "Automatic scaling is the scaling policy that App Engine has used since its inception. It is based on request rate, response latencies, and other application metrics." - }, - "basicScaling": { - "$ref": "BasicScaling", - "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." - }, - "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." - }, - "inboundServices": { - "type": "array", - "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", - "enumDescriptions": [ - "Not specified.", - "Allows an application to receive mail.", - "Allows an application receive email bound notifications.", - "Allows an application to receive error stanzas.", - "Allows an application to receive instant messages.", - "Allows an application to receive user subscription POSTs.", - "Allows an application to receive a user's chat presence.", - "Registers an application for notifications when a client connects or disconnects from a channel.", - "Enables warmup requests." - ], - "items": { - "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" - ] - } - }, - "instanceClass": { - "type": "string", - "description": "The frontend instance class to use to run this app. Valid values are `[F1, F2, F4, F4_1G]`. Default: \"F1\"" - }, - "network": { - "$ref": "Network", - "description": "Used to specify extra network settings (for VM runtimes only)." - }, - "resources": { - "$ref": "Resources", - "description": "Used to specify how many machine resources an app version needs (for VM runtimes only)." - }, - "runtime": { - "type": "string", - "description": "The desired runtime. Values can include python27, java7, go, etc." - }, - "threadsafe": { - "type": "boolean", - "description": "If true, multiple requests can be dispatched to the app at once." - }, - "vm": { - "type": "boolean", - "description": "Whether to deploy this app in a VM container." - }, - "betaSettings": { - "type": "object", - "description": "Beta settings supplied to the application via metadata.", - "additionalProperties": { - "type": "string" - } - }, - "env": { - "type": "string", - "description": "The App Engine execution environment to use for this version. Default: \"1\"" - }, - "servingStatus": { - "type": "string", - "description": "The current serving status of this version. Only `SERVING` versions will have instances created or billed for. If this field is unset when a version is created, `SERVING` status will be assumed. It is an error to explicitly set this field to `SERVING_STATUS_UNSPECIFIED`.", - "enum": [ - "SERVING_STATUS_UNSPECIFIED", - "SERVING", - "STOPPED" - ] - }, - "deployer": { - "type": "string", - "description": "The email address of the user who created this version. @OutputOnly" - }, - "creationTime": { - "type": "string", - "description": "Creation time of this version. This will be between the start and end times of the operation that creates this version. @OutputOnly" - }, - "handlers": { - "type": "array", - "description": "An ordered list of URL Matching patterns that should be applied to incoming requests. The first matching URL consumes the request, and subsequent handlers are not attempted. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", - "items": { - "$ref": "UrlMap" - } - }, - "errorHandlers": { - "type": "array", - "description": "Custom static error pages instead of these generic error pages, (limit 10 KB/page) Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", - "items": { - "$ref": "ErrorHandler" - } - }, - "libraries": { - "type": "array", - "description": "Configuration for Python runtime third-party libraries required by the application. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", - "items": { - "$ref": "Library" - } - }, - "apiConfig": { - "$ref": "ApiConfigHandler", - "description": "Serving configuration for Google Cloud Endpoints. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." - }, - "envVariables": { - "type": "object", - "description": "Environment variables made available to the application. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", - "additionalProperties": { - "type": "string" - } - }, - "defaultExpiration": { - "type": "string", - "description": "The length of time a static file served by a static file handler ought to be cached by web proxies and browsers, if the handler does not specify its own expiration. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." - }, - "healthCheck": { - "$ref": "HealthCheck", - "description": "Configure health checking for the VM instances. Unhealthy VM instances will be stopped and replaced with new instances. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." - }, - "nobuildFilesRegex": { - "type": "string", - "description": "Go only. Files that match this pattern will not be built into the app. May only be set on create requests." - }, - "deployment": { - "$ref": "Deployment", - "description": "Code and application artifacts that make up this version. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." - } - } - }, - "AutomaticScaling": { - "id": "AutomaticScaling", - "type": "object", - "description": "Automatic scaling is the scaling policy that App Engine has used since its inception. It is based on request rate, response latencies, and other application metrics.", - "properties": { - "coolDownPeriod": { - "type": "string", - "description": "The amount of time that the [Autoscaler](https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Applies only to the VM runtime." - }, - "cpuUtilization": { - "$ref": "CpuUtilization", - "description": "Target scaling by CPU usage." - }, - "maxConcurrentRequests": { - "type": "integer", - "description": "The number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Default value is chosen based on the runtime.", - "format": "int32" - }, - "maxIdleInstances": { - "type": "integer", - "description": "The maximum number of idle instances that App Engine should maintain for this version.", - "format": "int32" - }, - "maxTotalInstances": { - "type": "integer", - "description": "Max number of instances that App Engine should start to handle requests.", - "format": "int32" - }, - "maxPendingLatency": { - "type": "string", - "description": "The maximum amount of time that App Engine should allow a request to wait in the pending queue before starting a new instance to handle it." - }, - "minIdleInstances": { - "type": "integer", - "description": "The minimum number of idle instances that App Engine should maintain for this version. Only applies to the default version of a module, since other versions are not expected to receive significant traffic.", - "format": "int32" - }, - "minTotalInstances": { - "type": "integer", - "description": "Minimum number of instances that App Engine should maintain.", - "format": "int32" - }, - "minPendingLatency": { - "type": "string", - "description": "The minimum amount of time that App Engine should allow a request to wait in the pending queue before starting a new instance to handle it." - }, - "requestUtilization": { - "$ref": "RequestUtilization", - "description": "Target scaling by request utilization." - }, - "diskUtilization": { - "$ref": "DiskUtilization", - "description": "Target scaling by disk usage." - }, - "networkUtilization": { - "$ref": "NetworkUtilization", - "description": "Target scaling by network usage." - } - } - }, - "CpuUtilization": { - "id": "CpuUtilization", - "type": "object", - "description": "Target scaling by CPU usage.", - "properties": { - "aggregationWindowLength": { - "type": "string", - "description": "The period of time over which CPU utilization is calculated." - }, - "targetUtilization": { - "type": "number", - "description": "Target (0-1) CPU utilization ratio to maintain when scaling.", - "format": "double" - } - } - }, - "RequestUtilization": { - "id": "RequestUtilization", - "type": "object", - "description": "Target scaling by request utilization (for VM runtimes only).", - "properties": { - "targetRequestCountPerSec": { - "type": "integer", - "description": "Target requests per second.", - "format": "int32" - }, - "targetConcurrentRequests": { - "type": "integer", - "description": "Target number of concurrent requests.", - "format": "int32" - } - } - }, - "DiskUtilization": { - "id": "DiskUtilization", - "type": "object", - "description": "Target scaling by disk usage (for VM runtimes only).", - "properties": { - "targetWriteBytesPerSec": { - "type": "integer", - "description": "Target bytes per second written.", - "format": "int32" - }, - "targetWriteOpsPerSec": { - "type": "integer", - "description": "Target ops per second written.", - "format": "int32" - }, - "targetReadBytesPerSec": { - "type": "integer", - "description": "Target bytes per second read.", - "format": "int32" - }, - "targetReadOpsPerSec": { - "type": "integer", - "description": "Target ops per second read.", - "format": "int32" - } - } - }, - "NetworkUtilization": { - "id": "NetworkUtilization", - "type": "object", - "description": "Target scaling by network usage (for VM runtimes only).", - "properties": { - "targetSentBytesPerSec": { - "type": "integer", - "description": "Target bytes per second sent.", - "format": "int32" - }, - "targetSentPacketsPerSec": { - "type": "integer", - "description": "Target packets per second sent.", - "format": "int32" - }, - "targetReceivedBytesPerSec": { - "type": "integer", - "description": "Target bytes per second received.", - "format": "int32" - }, - "targetReceivedPacketsPerSec": { - "type": "integer", - "description": "Target packets per second received.", - "format": "int32" - } - } - }, - "BasicScaling": { - "id": "BasicScaling", - "type": "object", - "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.", - "properties": { - "idleTimeout": { - "type": "string", - "description": "The instance will be shut down this amount of time after receiving its last request." - }, - "maxInstances": { - "type": "integer", - "description": "The maximum number of instances for App Engine to create for this version.", - "format": "int32" - } - } - }, - "ManualScaling": { - "id": "ManualScaling", - "type": "object", - "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", - "properties": { - "instances": { - "type": "integer", - "description": "The number of instances to assign to the module at the start. This number can later be altered by using the [Modules API](https://cloud.google.com/appengine/docs/python/modules/functions) `set_num_instances()` function.", - "format": "int32" - } - } - }, - "Network": { - "id": "Network", - "type": "object", - "description": "Used to specify extra network settings (for VM runtimes only).", - "properties": { - "forwardedPorts": { - "type": "array", - "description": "A list of ports (or port pairs) to forward from the VM into the app container.", - "items": { - "type": "string" - } - }, - "instanceTag": { - "type": "string", - "description": "A tag to apply to the VM instance during creation." - }, - "name": { - "type": "string", - "description": "The Google Compute Engine network where the VMs will be created. If not specified, or empty, the network named \"default\" will be used. (The short name should be specified, not the resource path.)" - } - } - }, - "Resources": { - "id": "Resources", - "type": "object", - "description": "Used to specify how many machine resources an app version needs.", - "properties": { - "cpu": { - "type": "number", - "description": "How many CPU cores an app version needs.", - "format": "double" - }, - "diskGb": { - "type": "number", - "description": "How much disk size, in GB, an app version needs.", - "format": "double" - }, - "memoryGb": { - "type": "number", - "description": "How much memory, in GB, an app version needs.", - "format": "double" - } - } - }, - "UrlMap": { - "id": "UrlMap", - "type": "object", - "description": "A URL pattern and description of how it should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the code, such as images, CSS or JavaScript.", - "properties": { - "urlRegex": { - "type": "string", - "description": "A URL prefix. This value uses regular expression syntax (and so regexp special characters must be escaped), but it 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. This is always required." - }, - "staticFiles": { - "$ref": "StaticFilesHandler", - "description": "Returns the contents of a file, such as an image, as the response." - }, - "staticDirectory": { - "$ref": "StaticDirectoryHandler", - "description": "Serves the entire contents of a directory as static files. This attribute is deprecated. You can mimic the behavior of static directories using static files." - }, - "script": { - "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches the URL pattern." - }, - "apiEndpoint": { - "$ref": "ApiEndpointHandler", - "description": "Use API Endpoints to handle requests." - }, - "securityLevel": { - "type": "string", - "description": "Configures whether security (HTTPS) should be enforced for this URL.", - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, - "login": { - "type": "string", - "description": "What level of login is required to access this resource.", - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] - }, - "authFailAction": { - "type": "string", - "description": "For users not logged in, how to handle access to resources with required login. Defaults to \"redirect\".", - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ] - }, - "redirectHttpResponseCode": { - "type": "string", - "description": "`30x` code to use when performing redirects for the `secure` field. A `302` is used by default.", - "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" - ] - } - } - }, - "StaticFilesHandler": { - "id": "StaticFilesHandler", - "type": "object", - "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.", - "properties": { - "path": { - "type": "string", - "description": "The 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." - }, - "uploadPathRegex": { - "type": "string", - "description": "A regular expression that matches the file paths for all files that will be referenced by this handler." - }, - "httpHeaders": { - "type": "object", - "description": "HTTP headers to use for all responses from these URLs.", - "additionalProperties": { - "type": "string" - } - }, - "mimeType": { - "type": "string", - "description": "If specified, all files served by this handler will be served using the specified MIME type. If not specified, the MIME type for a file will be derived from the file's filename extension." - }, - "expiration": { - "type": "string", - "description": "The length of time a static file served by this handler ought to be cached by web proxies and browsers." - }, - "requireMatchingFile": { - "type": "boolean", - "description": "If true, this UrlMap entry does not match the request unless the file referenced by the handler also exists. If no such file exists, processing will continue with the next UrlMap that matches the requested URL." - }, - "applicationReadable": { - "type": "boolean", - "description": "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 an application. If this field is set to true, the files are also uploaded as code data so your application can read them. Both uploads are charged against your code and static data storage resource quotas." - } - } - }, - "StaticDirectoryHandler": { - "id": "StaticDirectoryHandler", - "type": "object", - "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.", - "properties": { - "directory": { - "type": "string", - "description": "The 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." - }, - "httpHeaders": { - "type": "object", - "description": "HTTP headers to use for all responses from these URLs.", - "additionalProperties": { - "type": "string" - } - }, - "mimeType": { - "type": "string", - "description": "If specified, all files served by this handler will be served using the specified MIME type. If not specified, the MIME type for a file will be derived from the file's filename extension." - }, - "expiration": { - "type": "string", - "description": "The length of time a static file served by this handler ought to be cached by web proxies and browsers." - }, - "requireMatchingFile": { - "type": "boolean", - "description": "If true, this UrlMap entry does not match the request unless the file referenced by the handler also exists. If no such file exists, processing will continue with the next UrlMap that matches the requested URL." - }, - "applicationReadable": { - "type": "boolean", - "description": "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 an application. If this field is set to true, the files are also uploaded as code data so your application can read them. Both uploads are charged against your code and static data storage resource quotas." - } - } - }, - "ScriptHandler": { - "id": "ScriptHandler", - "type": "object", - "description": "Executes a script to handle the request that matches the URL pattern.", - "properties": { - "scriptPath": { - "type": "string", - "description": "Specifies the path to the script from the application root directory." - } - } - }, - "ApiEndpointHandler": { - "id": "ApiEndpointHandler", - "type": "object", - "description": "Use Google Cloud Endpoints to handle requests.", - "properties": { - "scriptPath": { - "type": "string", - "description": "Specifies the path to the script from the application root directory." - } - } - }, - "ErrorHandler": { - "id": "ErrorHandler", - "type": "object", - "description": "A custom static error page to be served when an error occurs.", - "properties": { - "errorCode": { - "type": "string", - "description": "The error condition this handler applies to.", - "enum": [ - "ERROR_CODE_UNSPECIFIED", - "ERROR_CODE_DEFAULT", - "ERROR_CODE_OVER_QUOTA", - "ERROR_CODE_DOS_API_DENIAL", - "ERROR_CODE_TIMEOUT" - ] - }, - "staticFile": { - "type": "string", - "description": "Static file content to be served for this error." - }, - "mimeType": { - "type": "string", - "description": "MIME type of file. If unspecified, \"text/html\" is assumed." - } - } - }, - "Library": { - "id": "Library", - "type": "object", - "description": "A Python runtime third-party library required by the application.", - "properties": { - "name": { - "type": "string", - "description": "The name of the library, e.g. \"PIL\" or \"django\"." - }, - "version": { - "type": "string", - "description": "The version of the library to select, or \"latest\"." - } - } - }, - "ApiConfigHandler": { - "id": "ApiConfigHandler", - "type": "object", - "description": "API Serving configuration for Cloud Endpoints.", - "properties": { - "authFailAction": { - "type": "string", - "description": "For users not logged in, how to handle access to resources with required login. Defaults to \"redirect\".", - "enum": [ - "AUTH_FAIL_ACTION_UNSPECIFIED", - "AUTH_FAIL_ACTION_REDIRECT", - "AUTH_FAIL_ACTION_UNAUTHORIZED" - ] - }, - "login": { - "type": "string", - "description": "What level of login is required to access this resource. Default is \"optional\".", - "enum": [ - "LOGIN_UNSPECIFIED", - "LOGIN_OPTIONAL", - "LOGIN_ADMIN", - "LOGIN_REQUIRED" - ] - }, - "script": { - "type": "string", - "description": "Specifies the path to the script from the application root directory." - }, - "securityLevel": { - "type": "string", - "description": "Configures whether security (HTTPS) should be enforced for this URL.", - "enum": [ - "SECURE_UNSPECIFIED", - "SECURE_DEFAULT", - "SECURE_NEVER", - "SECURE_OPTIONAL", - "SECURE_ALWAYS" - ] - }, - "url": { - "type": "string", - "description": "URL to serve the endpoint at." - } - } - }, - "HealthCheck": { - "id": "HealthCheck", - "type": "object", - "description": "Configure health checking for the VM instances. Unhealthy VM instances will be killed and replaced with new instances.", - "properties": { - "disableHealthCheck": { - "type": "boolean", - "description": "Whether to explicitly disable health checks for this instance." - }, - "host": { - "type": "string", - "description": "The host header to send when performing an HTTP health check (e.g. myapp.appspot.com)" - }, - "healthyThreshold": { - "type": "integer", - "description": "The number of consecutive successful health checks before receiving traffic.", - "format": "uint32" - }, - "unhealthyThreshold": { - "type": "integer", - "description": "The number of consecutive failed health checks before removing traffic.", - "format": "uint32" - }, - "restartThreshold": { - "type": "integer", - "description": "The number of consecutive failed health checks before an instance is restarted.", - "format": "uint32" - }, - "checkInterval": { - "type": "string", - "description": "The interval between health checks." - }, - "timeout": { - "type": "string", - "description": "The amount of time before the health check is considered failed." - } - } - }, - "Deployment": { - "id": "Deployment", - "type": "object", - "description": "Code and application artifacts used to deploy a version to App Engine.", - "properties": { - "files": { - "type": "object", - "description": "A manifest of files stored in Google Cloud Storage which should be included as part of this application. All files must be readable using the credentials supplied with this call.", - "additionalProperties": { - "$ref": "FileInfo" - } - }, - "container": { - "$ref": "ContainerInfo", - "description": "If supplied, a docker (container) image which should be used to start the application. Only applicable to the 'vm' runtime." - }, - "sourceReferences": { - "type": "array", - "description": "The 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" - } - } - } - }, - "FileInfo": { - "id": "FileInfo", - "type": "object", - "description": "A single source file which is part of the application to be deployed.", - "properties": { - "sourceUrl": { - "type": "string", - "description": "The 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/\\/\\'." - }, - "sha1Sum": { - "type": "string", - "description": "The SHA1 (160 bits) hash of the file in hex." - }, - "mimeType": { - "type": "string", - "description": "The MIME type of the file; if unspecified, the value from Google Cloud Storage will be used." - } - } - }, - "ContainerInfo": { - "id": "ContainerInfo", - "type": "object", - "description": "A Docker (container) image which should be used to start the application.", - "properties": { - "image": { - "type": "string", - "description": "Reference to a hosted container image. Must be a URI to a resource in a Docker repository. Must be fully qualified, including tag or digest. e.g. gcr.io/my-project/image:tag or gcr.io/my-project/image@digest" - } - } - }, - "SourceReference": { - "id": "SourceReference", - "type": "object", - "description": "A reference to a particular snapshot of the source tree used to build and deploy the application.", - "properties": { - "repository": { - "type": "string", - "description": "Optional. A URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"" - }, - "revisionId": { - "type": "string", - "description": "The canonical (and persistent) identifier of the deployed revision, i.e. any kind of aliases including tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"" + "description": "Resource ID of a module in this application that should serve the matched request. The module must already exist. Example: `default`." } } }, @@ -920,7 +189,7 @@ "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "done": { @@ -936,7 +205,7 @@ "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -962,12 +231,743 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } } }, + "Version": { + "id": "Version", + "type": "object", + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a module.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Version resource in the API. Example: `apps/myapp/modules/default/versions/v1`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Relative name of the version within the module. Example: `v1`. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\"." + }, + "automaticScaling": { + "$ref": "AutomaticScaling", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics." + }, + "basicScaling": { + "$ref": "BasicScaling", + "description": "A module with basic scaling will create an instance when the application receives a request. The instance will be turned down when the app becomes idle. Basic scaling is ideal for work that is intermittent or driven by user activity." + }, + "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." + }, + "inboundServices": { + "type": "array", + "description": "Before an application can receive email or XMPP messages, the application must be configured to enable the service.", + "enumDescriptions": [ + "Not specified.", + "Allows an application to receive mail.", + "Allows an application to receive email-bound notifications.", + "Allows an application to receive error stanzas.", + "Allows an application to receive instant messages.", + "Allows an application to receive user subscription POSTs.", + "Allows an application to receive a user's chat presence.", + "Registers an application for notifications when a client connects or disconnects from a channel.", + "Enables warmup requests." + ], + "items": { + "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" + ] + } + }, + "instanceClass": { + "type": "string", + "description": "Instance class that is used to run this version. Valid values are: * AutomaticScaling: `F1`, `F2`, `F4`, `F4_1G` * ManualScaling or BasicScaling: `B1`, `B2`, `B4`, `B8`, `B4_1G` Defaults to `F1` for AutomaticScaling and `B1` for ManualScaling or BasicScaling." + }, + "network": { + "$ref": "Network", + "description": "Extra network settings. Only applicable for VM runtimes." + }, + "resources": { + "$ref": "Resources", + "description": "Machine resources for this version. Only applicable for VM runtimes." + }, + "runtime": { + "type": "string", + "description": "Desired runtime. Example: `python27`." + }, + "threadsafe": { + "type": "boolean", + "description": "Whether multiple requests can be dispatched to this version at once." + }, + "vm": { + "type": "boolean", + "description": "Whether to deploy this version in a container on a virtual machine." + }, + "betaSettings": { + "type": "object", + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", + "additionalProperties": { + "type": "string" + } + }, + "env": { + "type": "string", + "description": "App Engine execution environment to use for this version. Defaults to `1`." + }, + "servingStatus": { + "type": "string", + "description": "Current serving status of this version. Only the versions with a `SERVING` status create instances and can be billed. `SERVING_STATUS_UNSPECIFIED` is an invalid value. Defaults to `SERVING`.", + "enum": [ + "SERVING_STATUS_UNSPECIFIED", + "SERVING", + "STOPPED" + ] + }, + "deployer": { + "type": "string", + "description": "Email address of the user who created this version. @OutputOnly" + }, + "creationTime": { + "type": "string", + "description": "Time that this version was created. @OutputOnly" + }, + "handlers": { + "type": "array", + "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" + } + }, + "errorHandlers": { + "type": "array", + "description": "Custom static error pages. Limited to 10KB per page. Only returned in `GET` requests if `view=FULL` is set.", + "items": { + "$ref": "ErrorHandler" + } + }, + "libraries": { + "type": "array", + "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" + } + }, + "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." + }, + "envVariables": { + "type": "object", + "description": "Environment variables made available to the application. Only returned in `GET` requests if `view=FULL` is set.", + "additionalProperties": { + "type": "string" + } + }, + "defaultExpiration": { + "type": "string", + "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." + }, + "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." + }, + "nobuildFilesRegex": { + "type": "string", + "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." + }, + "deployment": { + "$ref": "Deployment", + "description": "Code and application artifacts that make up this version. Only returned in `GET` requests if `view=FULL` is set." + } + } + }, + "AutomaticScaling": { + "id": "AutomaticScaling", + "type": "object", + "description": "Automatic scaling is based on request rate, response latencies, and other application metrics.", + "properties": { + "coolDownPeriod": { + "type": "string", + "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." + }, + "cpuUtilization": { + "$ref": "CpuUtilization", + "description": "Target scaling by CPU usage." + }, + "maxConcurrentRequests": { + "type": "integer", + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Defaults to a runtime-specific value.", + "format": "int32" + }, + "maxIdleInstances": { + "type": "integer", + "description": "Maximum number of idle instances that should be maintained for this version.", + "format": "int32" + }, + "maxTotalInstances": { + "type": "integer", + "description": "Maximum number of instances that should be started to handle requests.", + "format": "int32" + }, + "maxPendingLatency": { + "type": "string", + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it." + }, + "minIdleInstances": { + "type": "integer", + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", + "format": "int32" + }, + "minTotalInstances": { + "type": "integer", + "description": "Minimum number of instances that should be maintained for this version.", + "format": "int32" + }, + "minPendingLatency": { + "type": "string", + "description": "Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it." + }, + "requestUtilization": { + "$ref": "RequestUtilization", + "description": "Target scaling by request utilization." + }, + "diskUtilization": { + "$ref": "DiskUtilization", + "description": "Target scaling by disk usage." + }, + "networkUtilization": { + "$ref": "NetworkUtilization", + "description": "Target scaling by network usage." + } + } + }, + "CpuUtilization": { + "id": "CpuUtilization", + "type": "object", + "description": "Target scaling by CPU usage.", + "properties": { + "aggregationWindowLength": { + "type": "string", + "description": "Period of time over which CPU utilization is calculated." + }, + "targetUtilization": { + "type": "number", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", + "format": "double" + } + } + }, + "RequestUtilization": { + "id": "RequestUtilization", + "type": "object", + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", + "properties": { + "targetRequestCountPerSec": { + "type": "integer", + "description": "Target requests per second.", + "format": "int32" + }, + "targetConcurrentRequests": { + "type": "integer", + "description": "Target number of concurrent requests.", + "format": "int32" + } + } + }, + "DiskUtilization": { + "id": "DiskUtilization", + "type": "object", + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", + "properties": { + "targetWriteBytesPerSec": { + "type": "integer", + "description": "Target bytes written per second.", + "format": "int32" + }, + "targetWriteOpsPerSec": { + "type": "integer", + "description": "Target ops written per second.", + "format": "int32" + }, + "targetReadBytesPerSec": { + "type": "integer", + "description": "Target bytes read per second.", + "format": "int32" + }, + "targetReadOpsPerSec": { + "type": "integer", + "description": "Target ops read per second.", + "format": "int32" + } + } + }, + "NetworkUtilization": { + "id": "NetworkUtilization", + "type": "object", + "description": "Target scaling by network usage. Only applicable for VM runtimes.", + "properties": { + "targetSentBytesPerSec": { + "type": "integer", + "description": "Target bytes sent per second.", + "format": "int32" + }, + "targetSentPacketsPerSec": { + "type": "integer", + "description": "Target packets sent per second.", + "format": "int32" + }, + "targetReceivedBytesPerSec": { + "type": "integer", + "description": "Target bytes received per second.", + "format": "int32" + }, + "targetReceivedPacketsPerSec": { + "type": "integer", + "description": "Target packets received per second.", + "format": "int32" + } + } + }, + "BasicScaling": { + "id": "BasicScaling", + "type": "object", + "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.", + "properties": { + "idleTimeout": { + "type": "string", + "description": "Duration of time after the last request that an instance must wait before the instance is shut down." + }, + "maxInstances": { + "type": "integer", + "description": "Maximum number of instances to create for this version.", + "format": "int32" + } + } + }, + "ManualScaling": { + "id": "ManualScaling", + "type": "object", + "description": "A module with manual scaling runs continuously, allowing you to perform complex initialization and rely on the state of its memory over time.", + "properties": { + "instances": { + "type": "integer", + "description": "Number of instances to assign to the module at the start. This number can later be altered by using the [Modules API](https://cloud.google.com/appengine/docs/python/modules/functions) `set_num_instances()` function.", + "format": "int32" + } + } + }, + "Network": { + "id": "Network", + "type": "object", + "description": "Extra network settings. Only applicable for VM runtimes.", + "properties": { + "forwardedPorts": { + "type": "array", + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", + "items": { + "type": "string" + } + }, + "instanceTag": { + "type": "string", + "description": "Tag to apply to the VM instance during creation." + }, + "name": { + "type": "string", + "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path. Defaults to `default`." + } + } + }, + "Resources": { + "id": "Resources", + "type": "object", + "description": "Machine resources for a version.", + "properties": { + "cpu": { + "type": "number", + "description": "Number of CPU cores needed.", + "format": "double" + }, + "diskGb": { + "type": "number", + "description": "Disk size (GB) needed.", + "format": "double" + }, + "memoryGb": { + "type": "number", + "description": "Memory (GB) needed.", + "format": "double" + } + } + }, + "UrlMap": { + "id": "UrlMap", + "type": "object", + "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.", + "properties": { + "urlRegex": { + "type": "string", + "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." + }, + "staticFiles": { + "$ref": "StaticFilesHandler", + "description": "Returns the contents of a file, such as an image, as the response." + }, + "staticDirectory": { + "$ref": "StaticDirectoryHandler", + "description": "Serves the entire contents of a directory as static files. This attribute is deprecated. You can mimic the behavior of static directories using static files." + }, + "script": { + "$ref": "ScriptHandler", + "description": "Executes a script to handle the request that matches this URL pattern." + }, + "apiEndpoint": { + "$ref": "ApiEndpointHandler", + "description": "Uses API Endpoints to handle requests." + }, + "securityLevel": { + "type": "string", + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ] + }, + "login": { + "type": "string", + "description": "Level of login required to access this resource.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ] + }, + "authFailAction": { + "type": "string", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ] + }, + "redirectHttpResponseCode": { + "type": "string", + "description": "`30x` code to use when performing redirects for the `secure` field. Defaults to `302`.", + "enum": [ + "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", + "REDIRECT_HTTP_RESPONSE_CODE_301", + "REDIRECT_HTTP_RESPONSE_CODE_302", + "REDIRECT_HTTP_RESPONSE_CODE_303", + "REDIRECT_HTTP_RESPONSE_CODE_307" + ] + } + } + }, + "StaticFilesHandler": { + "id": "StaticFilesHandler", + "type": "object", + "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.", + "properties": { + "path": { + "type": "string", + "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." + }, + "uploadPathRegex": { + "type": "string", + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler." + }, + "httpHeaders": { + "type": "object", + "description": "HTTP headers to use for all responses from these URLs.", + "additionalProperties": { + "type": "string" + } + }, + "mimeType": { + "type": "string", + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension." + }, + "expiration": { + "type": "string", + "description": "Time a static file served by this handler should be cached." + }, + "requireMatchingFile": { + "type": "boolean", + "description": "Whether this handler should match the request if the file referenced by the handler does not exist." + }, + "applicationReadable": { + "type": "boolean", + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas." + } + } + }, + "StaticDirectoryHandler": { + "id": "StaticDirectoryHandler", + "type": "object", + "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.", + "properties": { + "directory": { + "type": "string", + "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." + }, + "httpHeaders": { + "type": "object", + "description": "HTTP headers to use for all responses from these URLs.", + "additionalProperties": { + "type": "string" + } + }, + "mimeType": { + "type": "string", + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are direved from each file's filename extension." + }, + "expiration": { + "type": "string", + "description": "Time a static file served by this handler should be cached." + }, + "requireMatchingFile": { + "type": "boolean", + "description": "Whether this handler should match the request if the file referenced by the handler does not exist." + }, + "applicationReadable": { + "type": "boolean", + "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." + } + } + }, + "ScriptHandler": { + "id": "ScriptHandler", + "type": "object", + "description": "Executes a script to handle the request that matches the URL pattern.", + "properties": { + "scriptPath": { + "type": "string", + "description": "Path to the script from the application root directory." + } + } + }, + "ApiEndpointHandler": { + "id": "ApiEndpointHandler", + "type": "object", + "description": "Uses Google Cloud Endpoints to handle requests.", + "properties": { + "scriptPath": { + "type": "string", + "description": "Path to the script from the application root directory." + } + } + }, + "ErrorHandler": { + "id": "ErrorHandler", + "type": "object", + "description": "Custom static error page to be served when an error occurs.", + "properties": { + "errorCode": { + "type": "string", + "description": "Error condition this handler applies to.", + "enum": [ + "ERROR_CODE_UNSPECIFIED", + "ERROR_CODE_DEFAULT", + "ERROR_CODE_OVER_QUOTA", + "ERROR_CODE_DOS_API_DENIAL", + "ERROR_CODE_TIMEOUT" + ] + }, + "staticFile": { + "type": "string", + "description": "Static file content to be served for this error." + }, + "mimeType": { + "type": "string", + "description": "MIME type of file. Defaults to `text/html`." + } + } + }, + "Library": { + "id": "Library", + "type": "object", + "description": "Third-party Python runtime library that is required by the application.", + "properties": { + "name": { + "type": "string", + "description": "Name of the library. Example: \"django\"." + }, + "version": { + "type": "string", + "description": "Version of the library to select, or \"latest\"." + } + } + }, + "ApiConfigHandler": { + "id": "ApiConfigHandler", + "type": "object", + "description": "[Google Cloud Endpoints](https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", + "properties": { + "authFailAction": { + "type": "string", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", + "enum": [ + "AUTH_FAIL_ACTION_UNSPECIFIED", + "AUTH_FAIL_ACTION_REDIRECT", + "AUTH_FAIL_ACTION_UNAUTHORIZED" + ] + }, + "login": { + "type": "string", + "description": "Level of login required to access this resource. Defaults to `optional`.", + "enum": [ + "LOGIN_UNSPECIFIED", + "LOGIN_OPTIONAL", + "LOGIN_ADMIN", + "LOGIN_REQUIRED" + ] + }, + "script": { + "type": "string", + "description": "Path to the script from the application root directory." + }, + "securityLevel": { + "type": "string", + "description": "Security (HTTPS) enforcement for this URL.", + "enum": [ + "SECURE_UNSPECIFIED", + "SECURE_DEFAULT", + "SECURE_NEVER", + "SECURE_OPTIONAL", + "SECURE_ALWAYS" + ] + }, + "url": { + "type": "string", + "description": "URL to serve the endpoint at." + } + } + }, + "HealthCheck": { + "id": "HealthCheck", + "type": "object", + "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.", + "properties": { + "disableHealthCheck": { + "type": "boolean", + "description": "Whether to explicitly disable health checks for this instance." + }, + "host": { + "type": "string", + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"" + }, + "healthyThreshold": { + "type": "integer", + "description": "Number of consecutive successful health checks required before receiving traffic.", + "format": "uint32" + }, + "unhealthyThreshold": { + "type": "integer", + "description": "Number of consecutive failed health checks required before removing traffic.", + "format": "uint32" + }, + "restartThreshold": { + "type": "integer", + "description": "Number of consecutive failed health checks required before an instance is restarted.", + "format": "uint32" + }, + "checkInterval": { + "type": "string", + "description": "Interval between health checks." + }, + "timeout": { + "type": "string", + "description": "Time before the health check is considered failed." + } + } + }, + "Deployment": { + "id": "Deployment", + "type": "object", + "description": "Code and application artifacts used to deploy a version to App Engine.", + "properties": { + "files": { + "type": "object", + "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.", + "additionalProperties": { + "$ref": "FileInfo" + } + }, + "container": { + "$ref": "ContainerInfo", + "description": "A Docker image that App Engine uses the run the version. Only applicable for instances in App Engine flexible environment." + }, + "sourceReferences": { + "type": "array", + "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" + } + } + } + }, + "FileInfo": { + "id": "FileInfo", + "type": "object", + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", + "properties": { + "sourceUrl": { + "type": "string", + "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/\\/\\'." + }, + "sha1Sum": { + "type": "string", + "description": "The SHA1 hash of the file, in hex." + }, + "mimeType": { + "type": "string", + "description": "The MIME type of the file. Defaults to the value from Google Cloud Storage." + } + } + }, + "ContainerInfo": { + "id": "ContainerInfo", + "type": "object", + "description": "Docker image that is used to start a VM container for the version you deploy.", + "properties": { + "image": { + "type": "string", + "description": "URI to the hosted container image in a Docker repository. 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\"" + } + } + }, + "SourceReference": { + "id": "SourceReference", + "type": "object", + "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", + "properties": { + "repository": { + "type": "string", + "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"" + }, + "revisionId": { + "type": "string", + "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"" + } + } + }, "ListVersionsResponse": { "id": "ListVersionsResponse", "type": "object", @@ -975,7 +975,7 @@ "properties": { "versions": { "type": "array", - "description": "The versions belonging to the requested application module.", + "description": "The versions belonging to the requested module.", "items": { "$ref": "Version" } @@ -989,30 +989,30 @@ "Module": { "id": "Module", "type": "object", - "description": "A module is a component of an application that provides a single service or configuration. A module has a collection of versions that define a specific set of code used to implement the functionality of that 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.", "properties": { "name": { "type": "string", - "description": "The full path to the Module resource in the API. Example: \"apps/myapp/modules/default\" @OutputOnly" + "description": "Full path to the Module resource in the API. Example: `apps/myapp/modules/default`. @OutputOnly" }, "id": { "type": "string", - "description": "The relative name/path of the module within the application. Example: \"default\" @OutputOnly" + "description": "Relative name of the module within the application. Example: `default`. @OutputOnly" }, "split": { "$ref": "TrafficSplit", - "description": "A mapping that defines fractional HTTP traffic diversion to different versions within the module." + "description": "Mapping that defines fractional HTTP traffic diversion to different versions within the module." } } }, "TrafficSplit": { "id": "TrafficSplit", "type": "object", - "description": "Configuration for traffic splitting for versions within a single module. Traffic splitting allows traffic directed to the module to be assigned to one of several versions in a fractional way, enabling experiments and canarying new builds, for example.", + "description": "Traffic routing configuration for versions within a single module. Traffic splits define how traffic directed to the module is assigned to versions.", "properties": { "shardBy": { "type": "string", - "description": "Which mechanism should be used as a selector when choosing a version to send a request to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", "enum": [ "UNSPECIFIED", "COOKIE", @@ -1021,7 +1021,7 @@ }, "allocations": { "type": "object", - "description": "Mapping from module version IDs within the module to fractional (0.000, 1] allocations of traffic for that version. Each version may only be specified once, but some versions in the module may not have any traffic allocation. Modules that have traffic allocated in this field may not be deleted until the module is deleted, or their traffic allocation is removed. Allocations must sum to 1. Supports precision up to two decimal places for IP-based splits and up to three decimal places for cookie-based splits.", + "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.", "additionalProperties": { "type": "number", "format": "double" @@ -1047,6 +1047,106 @@ } } }, + "Instance": { + "id": "Instance", + "type": "object", + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Instance resource in the API. Example: `apps/myapp/modules/default/versions/v1/instances/instance-1`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Relative name of the instance within the version. Example: `instance-1`. @OutputOnly" + }, + "appEngineRelease": { + "type": "string", + "description": "App Engine release this instance is running on. @OutputOnly" + }, + "availability": { + "type": "string", + "description": "Availability of the instance. @OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ] + }, + "vmName": { + "type": "string", + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmZoneName": { + "type": "string", + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmId": { + "type": "string", + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "startTimestamp": { + "type": "string", + "description": "Time that this instance was started. @OutputOnly" + }, + "requests": { + "type": "integer", + "description": "Number of requests since this instance was started. @OutputOnly", + "format": "int32" + }, + "errors": { + "type": "integer", + "description": "Number of errors since this instance was started. @OutputOnly", + "format": "uint32" + }, + "qps": { + "type": "number", + "description": "Average queries per second (QPS) over the last minute. @OutputOnly", + "format": "float" + }, + "averageLatency": { + "type": "integer", + "description": "Average latency (ms) over the last minute. @OutputOnly", + "format": "int32" + }, + "memoryUsage": { + "type": "string", + "description": "Total memory in use (bytes). @OutputOnly", + "format": "int64" + }, + "vmStatus": { + "type": "string", + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmUnlocked": { + "type": "boolean", + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment. @OutputOnly" + } + } + }, + "ListInstancesResponse": { + "id": "ListInstancesResponse", + "type": "object", + "description": "Response message for `Instances.ListInstances`.", + "properties": { + "instances": { + "type": "array", + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results." + } + } + }, + "DebugInstanceRequest": { + "id": "DebugInstanceRequest", + "type": "object", + "description": "Request message for `Instances.DebugInstance`." + }, "ListOperationsResponse": { "id": "ListOperationsResponse", "type": "object", @@ -1065,6 +1165,54 @@ } } }, + "ListLocationsResponse": { + "id": "ListLocationsResponse", + "type": "object", + "description": "The response message for LocationService.ListLocations.", + "properties": { + "locations": { + "type": "array", + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + } + }, + "nextPageToken": { + "type": "string", + "description": "The standard List next-page token." + } + } + }, + "Location": { + "id": "Location", + "type": "object", + "description": "A resource that represents Google Cloud Platform location.", + "properties": { + "name": { + "type": "string", + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`" + }, + "locationId": { + "type": "string", + "description": "The cononical id for this location. For example: `\"us-east1\"`." + }, + "labels": { + "type": "object", + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "additionalProperties": { + "type": "string" + } + }, + "metadata": { + "type": "object", + "description": "Service-specific metadata. For example the available capacity at the given location.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + } + } + }, "OperationMetadata": { "id": "OperationMetadata", "type": "object", @@ -1072,27 +1220,27 @@ "properties": { "operationType": { "type": "string", - "description": "The type of the operation (deprecated, use method field instead). Example: \"create_version\". @OutputOnly" + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\". @OutputOnly" }, "insertTime": { "type": "string", - "description": "Timestamp that this operation was received. @OutputOnly" + "description": "Timestamp that this operation was created. @OutputOnly" }, "endTime": { "type": "string", - "description": "Timestamp that this operation was completed. (Not present if the operation is still in progress.) @OutputOnly" + "description": "Timestamp that this operation completed. @OutputOnly" }, "user": { "type": "string", - "description": "The user who requested this operation. @OutputOnly" + "description": "User who requested this operation. @OutputOnly" }, "target": { "type": "string", - "description": "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/modules/default`. @OutputOnly" }, "method": { "type": "string", - "description": "API method name that initiated the operation. Example: \"google.appengine.v1beta4.Version.CreateVersion\". @OutputOnly" + "description": "API method that initiated this operation. Example: `google.appengine.v1beta4.Version.CreateVersion`. @OutputOnly" } } }, @@ -1103,23 +1251,65 @@ "properties": { "method": { "type": "string", - "description": "API method name that initiated the operation. Example: \"google.appengine.v1beta5.Version.CreateVersion\". @OutputOnly" + "description": "API method name that initiated this operation. Example: `google.appengine.v1beta5.Version.CreateVersion`. @OutputOnly" }, "insertTime": { "type": "string", - "description": "Timestamp that this operation was received. @OutputOnly" + "description": "Timestamp that this operation was created. @OutputOnly" }, "endTime": { "type": "string", - "description": "Timestamp that this operation was completed. (Not present if the operation is still in progress.) @OutputOnly" + "description": "Timestamp that this operation completed. @OutputOnly" }, "user": { "type": "string", - "description": "The user who requested this operation. @OutputOnly" + "description": "User who requested this operation. @OutputOnly" }, "target": { "type": "string", - "description": "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/services/default`. @OutputOnly" + } + } + }, + "OperationMetadataV1": { + "id": "OperationMetadataV1", + "type": "object", + "description": "Metadata for the given google.longrunning.Operation.", + "properties": { + "method": { + "type": "string", + "description": "API method that initiated this operation. Example: `google.appengine.v1.Versions.CreateVersion`. @OutputOnly" + }, + "insertTime": { + "type": "string", + "description": "Time that this operation was created. @OutputOnly" + }, + "endTime": { + "type": "string", + "description": "Time that this operation completed. @OutputOnly" + }, + "user": { + "type": "string", + "description": "User who requested this operation. @OutputOnly" + }, + "target": { + "type": "string", + "description": "Name of the resource that this operation is acting on. Example: `apps/myapp/services/default`. @OutputOnly" + } + } + }, + "LocationMetadata": { + "id": "LocationMetadata", + "type": "object", + "description": "Metadata for the given google.cloud.location.Location.", + "properties": { + "standardEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Standard Environment is available in the given location. @OutputOnly" + }, + "flexibleEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Flexible Environment is available in the given location. @OutputOnly" } } } @@ -1127,6 +1317,21 @@ "resources": { "apps": { "methods": { + "create": { + "id": "appengine.apps.create", + "path": "v1beta4/apps", + "httpMethod": "POST", + "description": "Creates an App Engine application for a Google Cloud Platform project. This requires a project that excludes an App Engine application. For details about creating a project without an application, see the [Google Cloud Resource Manager create project topic](https://cloud.google.com/resource-manager/docs/creating-project).", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "id": "appengine.apps.get", "path": "v1beta4/apps/{appsId}", @@ -1135,7 +1340,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the application to get. For example: \"apps/myapp\".", + "description": "Part of `name`. Name of the application to get. Example: `apps/myapp`.", "required": true, "location": "path" }, @@ -1163,11 +1368,11 @@ "id": "appengine.apps.modules.delete", "path": "v1beta4/apps/{appsId}/modules/{modulesId}", "httpMethod": "DELETE", - "description": "Deletes a module and all enclosed versions.", + "description": "Deletes the specified module and all enclosed versions.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/modules/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default`.", "required": true, "location": "path" }, @@ -1193,11 +1398,11 @@ "id": "appengine.apps.modules.get", "path": "v1beta4/apps/{appsId}/modules/{modulesId}", "httpMethod": "GET", - "description": "Gets the current configuration of the module.", + "description": "Gets the current configuration of the specified module.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/modules/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default`.", "required": true, "location": "path" }, @@ -1227,7 +1432,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp`.", "required": true, "location": "path" }, @@ -1261,7 +1466,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/modules/default\".", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/modules/default`.", "required": true, "location": "path" }, @@ -1278,7 +1483,7 @@ }, "migrateTraffic": { "type": "boolean", - "description": "Whether to use Traffic Migration to shift traffic gradually. Traffic can only be migrated from a single version to another single version.", + "description": "Set to `true` to gradually shift traffic from one version to another single version. By default, traffic is shifted immediately. For gradual traffic migration, the target version must be located within instances that are configured for both [warmup requests](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#inboundservicetype) and [automatic scaling](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules.versions#automaticscaling). You must specify the [`shardBy`](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta4/apps.modules#shardby) field in the Module resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see [Migrating and Splitting Traffic](https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", "location": "query" } }, @@ -1304,11 +1509,11 @@ "id": "appengine.apps.modules.versions.create", "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions", "httpMethod": "POST", - "description": "Deploys new code and resource files to a version.", + "description": "Deploys code and resource files to a new version.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/modules/default\".", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/modules/default`.", "required": true, "location": "path" }, @@ -1341,7 +1546,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/modules/default/versions/v1\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1`.", "required": true, "location": "path" }, @@ -1374,11 +1579,11 @@ "id": "appengine.apps.modules.versions.get", "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", "httpMethod": "GET", - "description": "Gets application deployment information.", + "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.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/modules/default/versions/v1\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1`.", "required": true, "location": "path" }, @@ -1424,7 +1629,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/modules/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default`.", "required": true, "location": "path" }, @@ -1470,11 +1675,11 @@ "id": "appengine.apps.modules.versions.patch", "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}", "httpMethod": "PATCH", - "description": "Updates an existing version. Note: UNIMPLEMENTED.", + "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: * [`serving_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. * [`instance_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. * [`automatic_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. * [`automatic_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.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/modules/default/versions/1\".", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/modules/default/versions/1`.", "required": true, "location": "path" }, @@ -1511,6 +1716,195 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "instances": { + "methods": { + "delete": { + "id": "appengine.apps.modules.versions.instances.delete", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "description": "Stops a running instance.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "modulesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.modules.versions.instances.get", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "GET", + "description": "Gets instance information.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "modulesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "id": "appengine.apps.modules.versions.instances.list", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "description": "Lists the instances of a version.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1`.", + "required": true, + "location": "path" + }, + "modulesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId" + ], + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "debug": { + "id": "appengine.apps.modules.versions.instances.debug", + "path": "v1beta4/apps/{appsId}/modules/{modulesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/modules/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "modulesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "modulesId", + "versionsId", + "instancesId" + ], + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } @@ -1587,6 +1981,79 @@ ] } } + }, + "locations": { + "methods": { + "list": { + "id": "appengine.apps.locations.list", + "path": "v1beta4/apps/{appsId}/locations", + "httpMethod": "GET", + "description": "Lists information about the supported locations for this service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "required": true, + "location": "path" + }, + "filter": { + "type": "string", + "description": "The standard list filter.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "The standard list page size.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The standard list page token.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.locations.get", + "path": "v1beta4/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "description": "Get information about a location.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Resource name for the location.", + "required": true, + "location": "path" + }, + "locationsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "locationsId" + ], + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } diff --git a/etc/api/appengine/v1beta5/appengine-api.json b/etc/api/appengine/v1beta5/appengine-api.json index 8b0b6d9fe6..a5265e547b 100644 --- a/etc/api/appengine/v1beta5/appengine-api.json +++ b/etc/api/appengine/v1beta5/appengine-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/IvXIG_T4MYH64EZNcYKT8TBXdac\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/WgHFQRJNa9ABhjOi9ooEWesv8kc\"", "discoveryVersion": "v1", "id": "appengine:v1beta5", "name": "appengine", "version": "v1beta5", - "revision": "20160314", + "revision": "20160802", "title": "Google App Engine Admin API", "description": "Provisions and manages App Engine applications.", "ownerDomain": "google.com", @@ -124,7 +124,7 @@ "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "done": { @@ -140,7 +140,7 @@ "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -166,7 +166,7 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -193,46 +193,46 @@ "Application": { "id": "Application", "type": "object", - "description": "An Application contains the top-level configuration of an App Engine application.", + "description": "An Application resource contains the top-level configuration of an App Engine application.", "properties": { "name": { "type": "string", - "description": "The full path to the application in the API. Example: \"apps/myapp\". @OutputOnly" + "description": "Full path to the Application resource in the API. Example: `apps/myapp`. @OutputOnly" }, "id": { "type": "string", - "description": "The relative name/path of the application. Example: \"myapp\"." + "description": "Identifier of the Application resource. This identifier is equivalent to the project ID of the Google Cloud Platform project where you want to deploy your application. Example: `myapp`." }, "dispatchRules": { "type": "array", - "description": "HTTP path dispatch rules for requests to the app that do not explicitly target a service or version. The rules are order-dependent. @OutputOnly", + "description": "HTTP path dispatch rules for requests to the application that do not explicitly target a service or version. Rules are order-dependent. @OutputOnly", "items": { "$ref": "UrlDispatchRule" } }, "authDomain": { "type": "string", - "description": "If set, only users from the specified Google Apps authentication domain may access the application. If not set, any Google Account may access the application." + "description": "Google Apps authentication domain that controls which users can access this application. Defaults to open access for any Google Account." }, "location": { "type": "string", - "description": "The location from which the application will be run. Application instances will run out of data centers in the chosen location and all of the application's End User Content will be stored at rest. The default is \"us-central\". Choices are: \"us-central\" - Central US \"europe-west\" - Western Europe \"us-east1\" - Eastern US" + "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 US `europe-west` - Western Europe `us-east1` - Eastern US" }, "codeBucket": { "type": "string", - "description": "A Google Cloud Storage bucket which can be used for storing files associated with an application. This bucket is associated with the application and can be used by the gcloud deployment commands. @OutputOnly" + "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" }, "defaultCookieExpiration": { "type": "string", - "description": "Determines the cookie expiration policy for the application. @OutputOnly" + "description": "Cookie expiration policy for this application. @OutputOnly" }, "defaultHostname": { "type": "string", - "description": "The hostname used to reach the application, as resolved by App Engine. @OutputOnly" + "description": "Hostname used to reach the application, as resolved by App Engine. @OutputOnly" }, "defaultBucket": { "type": "string", - "description": "A Google Cloud Storage bucket which can be used by the application to store content. @OutputOnly" + "description": "A Google Cloud Storage bucket that can be used by the application to store content. @OutputOnly" } } }, @@ -243,34 +243,34 @@ "properties": { "domain": { "type": "string", - "description": "The domain name to match on. Supports '*' (glob) wildcarding on the left-hand side of a '.'. If empty, all domains will be matched (the same as '*')." + "description": "Domain name to match against. The wildcard \"`*`\" is supported if specified before a period: \"`*.`\". Defaults to matching all domains: \"`*`\"." }, "path": { "type": "string", - "description": "The pathname within the host. This must start with a '/'. A single '*' (glob) can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters." + "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." }, "service": { "type": "string", - "description": "The resource id of a Service in this application that should service the matched request. The Service must already exist. Example: \"default\"." + "description": "Resource id of a service in this application that should serve the matched request. The service must already exist. Example: `default`." } } }, "Version": { "id": "Version", "type": "object", - "description": "A Version is a specific set of source code and configuration files deployed to a service.", + "description": "A Version resource is a specific set of source code and configuration files that are deployed into a service.", "properties": { "name": { "type": "string", - "description": "The full path to the Version resource in the API. Example: \"apps/myapp/services/default/versions/v1\". @OutputOnly" + "description": "Full path to the Version resource in the API. Example: `apps/myapp/services/default/versions/v1`. @OutputOnly" }, "id": { "type": "string", - "description": "The relative name/path of the Version within the service. Example: \"v1\". Version specifiers can contain lowercase letters, digits, and hyphens. It cannot begin with the prefix `ah-` and the names `default` and `latest` are reserved and cannot be used." + "description": "Relative name of the version within the module. Example: `v1`. Version names can contain only lowercase letters, numbers, or hyphens. Reserved names: \"default\", \"latest\", and any name with the prefix \"ah-\"." }, "automaticScaling": { "$ref": "AutomaticScaling", - "description": "Automatic scaling is the scaling policy that App Engine has used since its inception. It 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." }, "basicScaling": { "$ref": "BasicScaling", @@ -286,7 +286,7 @@ "enumDescriptions": [ "Not specified.", "Allows an application to receive mail.", - "Allows an application receive email bound notifications.", + "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.", @@ -311,42 +311,42 @@ }, "instanceClass": { "type": "string", - "description": "The instance class to use to run this app. Valid values for AutomaticScaling are `[F1, F2, F4, F4_1G]`. Valid values for ManualScaling and BasicScaling are `[B1, B2, B4, B8, B4_1G]`. Default: \"F1\" for AutomaticScaling, \"B1\" for ManualScaling and BasicScaling" + "description": "Instance class that is used to run this version. Valid values are: * AutomaticScaling: `F1`, `F2`, `F4`, `F4_1G` * ManualScaling or BasicScaling: `B1`, `B2`, `B4`, `B8`, `B4_1G` Defaults to `F1` for AutomaticScaling and `B1` for ManualScaling or BasicScaling." }, "network": { "$ref": "Network", - "description": "Used to specify extra network settings (for VM runtimes only)." + "description": "Extra network settings. Only applicable for VM runtimes." }, "resources": { "$ref": "Resources", - "description": "Used to specify how many machine resources an app version needs (for VM runtimes only)." + "description": "Machine resources for this version. Only applicable for VM runtimes." }, "runtime": { "type": "string", - "description": "The desired runtime. Values can include python27, java7, go, etc." + "description": "Desired runtime. Example: `python27`." }, "threadsafe": { "type": "boolean", - "description": "If true, multiple requests can be dispatched to the app at once." + "description": "Whether multiple requests can be dispatched to this version at once." }, "vm": { "type": "boolean", - "description": "Whether to deploy this app in a VM container." + "description": "Whether to deploy this version in a container on a virtual machine." }, "betaSettings": { "type": "object", - "description": "Beta settings supplied to the application via metadata.", + "description": "Metadata settings that are supplied to this version to enable beta runtime features.", "additionalProperties": { "type": "string" } }, "env": { "type": "string", - "description": "The App Engine execution environment to use for this version. Default: \"1\"" + "description": "App Engine execution environment to use for this version. Defaults to `1`." }, "servingStatus": { "type": "string", - "description": "The current serving status of this version. Only `SERVING` versions will have instances created or billed for. If this field is unset when a version is created, `SERVING` status will be assumed. It is an error to explicitly set this field to `SERVING_STATUS_UNSPECIFIED`.", + "description": "Current serving status of this version. Only the versions with a `SERVING` status create instances and can be billed. `SERVING_STATUS_UNSPECIFIED` is an invalid value. Defaults to `SERVING`.", "enum": [ "SERVING_STATUS_UNSPECIFIED", "SERVING", @@ -355,11 +355,11 @@ }, "deployer": { "type": "string", - "description": "The email address of the user who created this version. @OutputOnly" + "description": "Email address of the user who created this version. @OutputOnly" }, "creationTime": { "type": "string", - "description": "Creation time of this version. This will be between the start and end times of the operation that creates this version. @OutputOnly" + "description": "Time that this version was created. @OutputOnly" }, "diskUsageBytes": { "type": "string", @@ -368,62 +368,62 @@ }, "handlers": { "type": "array", - "description": "An ordered list of URL Matching patterns that should be applied to incoming requests. The first matching URL consumes the request, and subsequent handlers are not attempted. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", + "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" } }, "errorHandlers": { "type": "array", - "description": "Custom static error pages instead of these generic error pages, (limit 10 KB/page) Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", + "description": "Custom static error pages. Limited to 10KB per page. Only returned in `GET` requests if `view=FULL` is set.", "items": { "$ref": "ErrorHandler" } }, "libraries": { "type": "array", - "description": "Configuration for Python runtime third-party libraries required by the application. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", + "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" } }, "apiConfig": { "$ref": "ApiConfigHandler", - "description": "Serving configuration for Google Cloud Endpoints. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." + "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." }, "envVariables": { "type": "object", - "description": "Environment variables made available to the application. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable.", + "description": "Environment variables made available to the application. Only returned in `GET` requests if `view=FULL` is set.", "additionalProperties": { "type": "string" } }, "defaultExpiration": { "type": "string", - "description": "The length of time a static file served by a static file handler ought to be cached by web proxies and browsers, if the handler does not specify its own expiration. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." + "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." }, "healthCheck": { "$ref": "HealthCheck", - "description": "Configure health checking for the VM instances. Unhealthy VM instances will be stopped and replaced with new instances. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." + "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." }, "nobuildFilesRegex": { "type": "string", - "description": "Go only. Files that match this pattern will not be built into the app. May only be set on create requests." + "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." }, "deployment": { "$ref": "Deployment", - "description": "Code and application artifacts that make up this version. Only returned in `GET` requests if `view=FULL` is set. May only be set on create requests; once created, is immutable." + "description": "Code and application artifacts that make up this version. Only returned in `GET` requests if `view=FULL` is set." } } }, "AutomaticScaling": { "id": "AutomaticScaling", "type": "object", - "description": "Automatic scaling is the scaling policy that App Engine has used since its inception. It 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.", "properties": { "coolDownPeriod": { "type": "string", - "description": "The amount of time that the [Autoscaler](https://cloud.google.com/compute/docs/autoscaler/) should wait between changes to the number of virtual machines. Applies only to the VM runtime." + "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." }, "cpuUtilization": { "$ref": "CpuUtilization", @@ -431,36 +431,36 @@ }, "maxConcurrentRequests": { "type": "integer", - "description": "The number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Default value is chosen based on the runtime.", + "description": "Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Defaults to a runtime-specific value.", "format": "int32" }, "maxIdleInstances": { "type": "integer", - "description": "The maximum number of idle instances that App Engine should maintain for this version.", + "description": "Maximum number of idle instances that should be maintained for this version.", "format": "int32" }, "maxTotalInstances": { "type": "integer", - "description": "Max number of instances that App Engine should start to handle requests.", + "description": "Maximum number of instances that should be started to handle requests.", "format": "int32" }, "maxPendingLatency": { "type": "string", - "description": "The maximum amount of time that App Engine should allow a request to wait in the pending queue before starting a new instance to handle it." + "description": "Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it." }, "minIdleInstances": { "type": "integer", - "description": "The minimum number of idle instances that App Engine should maintain for this version. Only applies to the default version of a service, since other versions are not expected to receive significant traffic.", + "description": "Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a module.", "format": "int32" }, "minTotalInstances": { "type": "integer", - "description": "Minimum number of instances that App Engine should maintain.", + "description": "Minimum number of instances that should be maintained for this version.", "format": "int32" }, "minPendingLatency": { "type": "string", - "description": "The minimum amount of time that App Engine should allow a request to 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." }, "requestUtilization": { "$ref": "RequestUtilization", @@ -483,11 +483,11 @@ "properties": { "aggregationWindowLength": { "type": "string", - "description": "The period of time over which CPU utilization is calculated." + "description": "Period of time over which CPU utilization is calculated." }, "targetUtilization": { "type": "number", - "description": "Target (0-1) CPU utilization ratio to maintain when scaling.", + "description": "Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.", "format": "double" } } @@ -495,7 +495,7 @@ "RequestUtilization": { "id": "RequestUtilization", "type": "object", - "description": "Target scaling by request utilization (for VM runtimes only).", + "description": "Target scaling by request utilization. Only applicable for VM runtimes.", "properties": { "targetRequestCountPerSec": { "type": "integer", @@ -512,26 +512,26 @@ "DiskUtilization": { "id": "DiskUtilization", "type": "object", - "description": "Target scaling by disk usage (for VM runtimes only).", + "description": "Target scaling by disk usage. Only applicable for VM runtimes.", "properties": { "targetWriteBytesPerSec": { "type": "integer", - "description": "Target bytes per second written.", + "description": "Target bytes written per second.", "format": "int32" }, "targetWriteOpsPerSec": { "type": "integer", - "description": "Target ops per second written.", + "description": "Target ops written per second.", "format": "int32" }, "targetReadBytesPerSec": { "type": "integer", - "description": "Target bytes per second read.", + "description": "Target bytes read per second.", "format": "int32" }, "targetReadOpsPerSec": { "type": "integer", - "description": "Target ops per second read.", + "description": "Target ops read per second.", "format": "int32" } } @@ -539,26 +539,26 @@ "NetworkUtilization": { "id": "NetworkUtilization", "type": "object", - "description": "Target scaling by network usage (for VM runtimes only).", + "description": "Target scaling by network usage. Only applicable for VM runtimes.", "properties": { "targetSentBytesPerSec": { "type": "integer", - "description": "Target bytes per second sent.", + "description": "Target bytes sent per second.", "format": "int32" }, "targetSentPacketsPerSec": { "type": "integer", - "description": "Target packets per second sent.", + "description": "Target packets sent per second.", "format": "int32" }, "targetReceivedBytesPerSec": { "type": "integer", - "description": "Target bytes per second received.", + "description": "Target bytes received per second.", "format": "int32" }, "targetReceivedPacketsPerSec": { "type": "integer", - "description": "Target packets per second received.", + "description": "Target packets received per second.", "format": "int32" } } @@ -570,11 +570,11 @@ "properties": { "idleTimeout": { "type": "string", - "description": "The instance will be shut down this amount of time after receiving its last request." + "description": "Duration of time after the last request that an instance must wait before the instance is shut down." }, "maxInstances": { "type": "integer", - "description": "The maximum number of instances for App Engine to create for this version.", + "description": "Maximum number of instances to create for this version.", "format": "int32" } } @@ -586,7 +586,7 @@ "properties": { "instances": { "type": "integer", - "description": "The 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.", + "description": "Number of instances to assign to the service at the start. This number can later be altered by using the [Modules API](https://cloud.google.com/appengine/docs/python/modules/functions) `set_num_instances()` function.", "format": "int32" } } @@ -594,43 +594,43 @@ "Network": { "id": "Network", "type": "object", - "description": "Used to specify extra network settings (for VM runtimes only).", + "description": "Extra network settings. Only applicable for VM runtimes.", "properties": { "forwardedPorts": { "type": "array", - "description": "A list of ports (or port pairs) to forward from the VM into the app container.", + "description": "List of ports, or port pairs, to forward from the virtual machine to the application container.", "items": { "type": "string" } }, "instanceTag": { "type": "string", - "description": "A tag to apply to the VM instance during creation." + "description": "Tag to apply to the VM instance during creation." }, "name": { "type": "string", - "description": "The Google Compute Engine network where the VMs will be created. If not specified, or empty, the network named \"default\" will be used. (The short name should be specified, not the resource path.)" + "description": "Google Cloud Platform network where the virtual machines are created. Specify the short name, not the resource path. Defaults to `default`." } } }, "Resources": { "id": "Resources", "type": "object", - "description": "Used to specify how many machine resources an app version needs.", + "description": "Machine resources for a version.", "properties": { "cpu": { "type": "number", - "description": "How many CPU cores an app version needs.", + "description": "Number of CPU cores needed.", "format": "double" }, "diskGb": { "type": "number", - "description": "How much disk size, in GB, an app version needs.", + "description": "Disk size (GB) needed.", "format": "double" }, "memoryGb": { "type": "number", - "description": "How much memory, in GB, an app version needs.", + "description": "Memory (GB) needed.", "format": "double" } } @@ -638,11 +638,11 @@ "UrlMap": { "id": "UrlMap", "type": "object", - "description": "A URL pattern and description of how it should be handled. App Engine can handle URLs by executing application code, or by serving static files uploaded with the code, such as images, CSS or JavaScript.", + "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.", "properties": { "urlRegex": { "type": "string", - "description": "A URL prefix. This value uses regular expression syntax (and so regexp special characters must be escaped), but it 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. This is always required." + "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." }, "staticFiles": { "$ref": "StaticFilesHandler", @@ -650,15 +650,15 @@ }, "script": { "$ref": "ScriptHandler", - "description": "Executes a script to handle the request that matches the URL pattern." + "description": "Executes a script to handle the request that matches this URL pattern." }, "apiEndpoint": { "$ref": "ApiEndpointHandler", - "description": "Use API Endpoints to handle requests." + "description": "Uses API Endpoints to handle requests." }, "securityLevel": { "type": "string", - "description": "Configures whether security (HTTPS) should be enforced for this URL.", + "description": "Security (HTTPS) enforcement for this URL.", "enum": [ "SECURE_UNSPECIFIED", "SECURE_DEFAULT", @@ -669,7 +669,7 @@ }, "login": { "type": "string", - "description": "What level of login is required to access this resource.", + "description": "Level of login required to access this resource.", "enum": [ "LOGIN_UNSPECIFIED", "LOGIN_OPTIONAL", @@ -679,7 +679,7 @@ }, "authFailAction": { "type": "string", - "description": "For users not logged in, how to handle access to resources with required login. Defaults to \"redirect\".", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", "enum": [ "AUTH_FAIL_ACTION_UNSPECIFIED", "AUTH_FAIL_ACTION_REDIRECT", @@ -688,7 +688,7 @@ }, "redirectHttpResponseCode": { "type": "string", - "description": "`30x` code to use when performing redirects for the `secure` field. A `302` is used by default.", + "description": "`30x` code to use when performing redirects for the `secure` field. Defaults to `302`.", "enum": [ "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED", "REDIRECT_HTTP_RESPONSE_CODE_301", @@ -706,11 +706,11 @@ "properties": { "path": { "type": "string", - "description": "The 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": "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." }, "uploadPathRegex": { "type": "string", - "description": "A regular expression that matches the file paths for all files that will be referenced by this handler." + "description": "Regular expression that matches the file paths for all files that should be referenced by this handler." }, "httpHeaders": { "type": "object", @@ -721,19 +721,19 @@ }, "mimeType": { "type": "string", - "description": "If specified, all files served by this handler will be served using the specified MIME type. If not specified, the MIME type for a file will be derived from the file's filename extension." + "description": "MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file's filename extension." }, "expiration": { "type": "string", - "description": "The length of time a static file served by this handler ought to be cached by web proxies and browsers." + "description": "Time a static file served by this handler should be cached." }, "requireMatchingFile": { "type": "boolean", - "description": "If true, this UrlMap entry does not match the request unless the file referenced by the handler also exists. If no such file exists, processing will continue with the next UrlMap that matches the requested URL." + "description": "Whether this handler should match the request if the file referenced by the handler does not exist." }, "applicationReadable": { "type": "boolean", - "description": "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 an application. If this field is set to true, the files are also uploaded as code data so your application can read them. Both uploads are charged against your code and static data storage resource quotas." + "description": "Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas." } } }, @@ -744,29 +744,29 @@ "properties": { "scriptPath": { "type": "string", - "description": "Specifies the path to the script from the application root directory." + "description": "Path to the script from the application root directory." } } }, "ApiEndpointHandler": { "id": "ApiEndpointHandler", "type": "object", - "description": "Use Google Cloud Endpoints to handle requests.", + "description": "Uses Google Cloud Endpoints to handle requests.", "properties": { "scriptPath": { "type": "string", - "description": "Specifies the path to the script from the application root directory." + "description": "Path to the script from the application root directory." } } }, "ErrorHandler": { "id": "ErrorHandler", "type": "object", - "description": "A custom static error page to be served when an error occurs.", + "description": "Custom static error page to be served when an error occurs.", "properties": { "errorCode": { "type": "string", - "description": "The error condition this handler applies to.", + "description": "Error condition this handler applies to.", "enum": [ "ERROR_CODE_UNSPECIFIED", "ERROR_CODE_DEFAULT", @@ -781,33 +781,33 @@ }, "mimeType": { "type": "string", - "description": "MIME type of file. If unspecified, \"text/html\" is assumed." + "description": "MIME type of file. Defaults to `text/html`." } } }, "Library": { "id": "Library", "type": "object", - "description": "A Python runtime third-party library required by the application.", + "description": "Third-party Python runtime library that is required by the application.", "properties": { "name": { "type": "string", - "description": "The name of the library, e.g. \"PIL\" or \"django\"." + "description": "Name of the library. Example: \"django\"." }, "version": { "type": "string", - "description": "The version of the library to select, or \"latest\"." + "description": "Version of the library to select, or \"latest\"." } } }, "ApiConfigHandler": { "id": "ApiConfigHandler", "type": "object", - "description": "API Serving configuration for Cloud Endpoints.", + "description": "[Google Cloud Endpoints](https://cloud.google.com/appengine/docs/python/endpoints/) configuration for API handlers.", "properties": { "authFailAction": { "type": "string", - "description": "For users not logged in, how to handle access to resources with required login. Defaults to \"redirect\".", + "description": "Action to take when users access resources that require authentication. Defaults to `redirect`.", "enum": [ "AUTH_FAIL_ACTION_UNSPECIFIED", "AUTH_FAIL_ACTION_REDIRECT", @@ -816,7 +816,7 @@ }, "login": { "type": "string", - "description": "What level of login is required to access this resource. Default is \"optional\".", + "description": "Level of login required to access this resource. Defaults to `optional`.", "enum": [ "LOGIN_UNSPECIFIED", "LOGIN_OPTIONAL", @@ -826,11 +826,11 @@ }, "script": { "type": "string", - "description": "Specifies the path to the script from the application root directory." + "description": "Path to the script from the application root directory." }, "securityLevel": { "type": "string", - "description": "Configures whether security (HTTPS) should be enforced for this URL.", + "description": "Security (HTTPS) enforcement for this URL.", "enum": [ "SECURE_UNSPECIFIED", "SECURE_DEFAULT", @@ -848,7 +848,7 @@ "HealthCheck": { "id": "HealthCheck", "type": "object", - "description": "Configure health checking for the VM instances. Unhealthy VM instances will be killed and replaced with new instances.", + "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.", "properties": { "disableHealthCheck": { "type": "boolean", @@ -856,30 +856,30 @@ }, "host": { "type": "string", - "description": "The host header to send when performing an HTTP health check (e.g. myapp.appspot.com)" + "description": "Host header to send when performing an HTTP health check. Example: \"myapp.appspot.com\"" }, "healthyThreshold": { "type": "integer", - "description": "The number of consecutive successful health checks before receiving traffic.", + "description": "Number of consecutive successful health checks required before receiving traffic.", "format": "uint32" }, "unhealthyThreshold": { "type": "integer", - "description": "The number of consecutive failed health checks before removing traffic.", + "description": "Number of consecutive failed health checks required before removing traffic.", "format": "uint32" }, "restartThreshold": { "type": "integer", - "description": "The number of consecutive failed health checks before an instance is restarted.", + "description": "Number of consecutive failed health checks required before an instance is restarted.", "format": "uint32" }, "checkInterval": { "type": "string", - "description": "The interval between health checks." + "description": "Interval between health checks." }, "timeout": { "type": "string", - "description": "The amount of time before the health check is considered failed." + "description": "Time before the health check is considered failed." } } }, @@ -890,18 +890,18 @@ "properties": { "files": { "type": "object", - "description": "A manifest of files stored in Google Cloud Storage which should be included as part of this application. All files must be readable using the credentials supplied with this call.", + "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.", "additionalProperties": { "$ref": "FileInfo" } }, "container": { "$ref": "ContainerInfo", - "description": "If supplied, a docker (container) image which should be used to start the application. Only applicable to the 'vm' runtime." + "description": "A Docker image that App Engine uses the run the version. Only applicable for instances in App Engine flexible environment." }, "sourceReferences": { "type": "array", - "description": "The 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.", + "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" } @@ -911,45 +911,45 @@ "FileInfo": { "id": "FileInfo", "type": "object", - "description": "A single source file which is part of the application to be deployed.", + "description": "Single source file that is part of the version to be deployed. Each source file that is deployed must be specified separately.", "properties": { "sourceUrl": { "type": "string", - "description": "The 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/\\/\\'." + "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/\\/\\'." }, "sha1Sum": { "type": "string", - "description": "The SHA1 (160 bits) hash of the file in hex." + "description": "The SHA1 hash of the file, in hex." }, "mimeType": { "type": "string", - "description": "The MIME type of the file; if unspecified, the value from Google Cloud Storage will be used." + "description": "The MIME type of the file. Defaults to the value from Google Cloud Storage." } } }, "ContainerInfo": { "id": "ContainerInfo", "type": "object", - "description": "A Docker (container) image which should be used to start the application.", + "description": "Docker image that is used to start a VM container for the version you deploy.", "properties": { "image": { "type": "string", - "description": "Reference to a hosted container image. Must be a URI to a resource in a Docker repository. Must be fully qualified, including tag or digest. e.g. gcr.io/my-project/image:tag or gcr.io/my-project/image@digest" + "description": "URI to the hosted container image in a Docker repository. 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\"" } } }, "SourceReference": { "id": "SourceReference", "type": "object", - "description": "A reference to a particular snapshot of the source tree used to build and deploy the application.", + "description": "Reference to a particular snapshot of the source tree used to build and deploy the application.", "properties": { "repository": { "type": "string", - "description": "Optional. A URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"" + "description": "URI string identifying the repository. Example: \"https://source.developers.google.com/p/app-123/r/default\"" }, "revisionId": { "type": "string", - "description": "The canonical (and persistent) identifier of the deployed revision, i.e. any kind of aliases including tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"" + "description": "The canonical, persistent identifier of the deployed revision. Aliases that include tags or branch names are not allowed. Example (git): \"2198322f89e0bb2e25021667c2ed489d1fd34e6b\"" } } }, @@ -960,7 +960,7 @@ "properties": { "versions": { "type": "array", - "description": "The versions belonging to the requested application service.", + "description": "The versions belonging to the requested service.", "items": { "$ref": "Version" } @@ -974,30 +974,30 @@ "Service": { "id": "Service", "type": "object", - "description": "A service 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.", + "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.", "properties": { "name": { "type": "string", - "description": "The full path to the Service resource in the API. Example: \"apps/myapp/services/default\" @OutputOnly" + "description": "Full path to the Service resource in the API. Example: `apps/myapp/services/default`. @OutputOnly" }, "id": { "type": "string", - "description": "The relative name/path of the service within the application. Example: \"default\" @OutputOnly" + "description": "Relative name of the service within the application. Example: `default`. @OutputOnly" }, "split": { "$ref": "TrafficSplit", - "description": "A 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." } } }, "TrafficSplit": { "id": "TrafficSplit", "type": "object", - "description": "Configuration for traffic splitting for versions within a single service. Traffic splitting allows traffic directed to the service to be assigned to one of several versions in a fractional way, enabling experiments and canarying new builds, for example.", + "description": "Traffic routing configuration for versions within a single service. Traffic splits define how traffic directed to the service is assigned to versions.", "properties": { "shardBy": { "type": "string", - "description": "Which mechanism should be used as a selector when choosing a version to send a request to. The traffic selection algorithm will be stable for either type until allocations are changed.", + "description": "Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.", "enum": [ "UNSPECIFIED", "COOKIE", @@ -1006,7 +1006,7 @@ }, "allocations": { "type": "object", - "description": "Mapping from service version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version may only be specified once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated in this field may not be deleted until the service is deleted, or their traffic allocation is removed. Allocations must sum to 1. Supports precision up to two decimal places for IP-based splits and up to three decimal places for cookie-based splits.", + "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.", "additionalProperties": { "type": "number", "format": "double" @@ -1032,6 +1032,154 @@ } } }, + "Instance": { + "id": "Instance", + "type": "object", + "description": "An Instance resource is the computing unit that App Engine uses to automatically scale an application.", + "properties": { + "name": { + "type": "string", + "description": "Full path to the Instance resource in the API. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`. @OutputOnly" + }, + "id": { + "type": "string", + "description": "Relative name of the instance within the version. Example: `instance-1`. @OutputOnly" + }, + "appEngineRelease": { + "type": "string", + "description": "App Engine release this instance is running on. @OutputOnly" + }, + "availability": { + "type": "string", + "description": "Availability of the instance. @OutputOnly", + "enum": [ + "UNSPECIFIED", + "RESIDENT", + "DYNAMIC" + ] + }, + "vmName": { + "type": "string", + "description": "Name of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmZoneName": { + "type": "string", + "description": "Zone where the virtual machine is located. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmId": { + "type": "string", + "description": "Virtual machine ID of this instance. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "startTimestamp": { + "type": "string", + "description": "Time that this instance was started. @OutputOnly" + }, + "requests": { + "type": "integer", + "description": "Number of requests since this instance was started. @OutputOnly", + "format": "int32" + }, + "errors": { + "type": "integer", + "description": "Number of errors since this instance was started. @OutputOnly", + "format": "uint32" + }, + "qps": { + "type": "number", + "description": "Average queries per second (QPS) over the last minute. @OutputOnly", + "format": "float" + }, + "averageLatency": { + "type": "integer", + "description": "Average latency (ms) over the last minute. @OutputOnly", + "format": "int32" + }, + "memoryUsage": { + "type": "string", + "description": "Total memory in use (bytes). @OutputOnly", + "format": "int64" + }, + "vmStatus": { + "type": "string", + "description": "Status of the virtual machine where this instance lives. Only applicable for instances in App Engine flexible environment. @OutputOnly" + }, + "vmUnlocked": { + "type": "boolean", + "description": "Whether this instance is in debug mode. Only applicable for instances in App Engine flexible environment. @OutputOnly" + } + } + }, + "ListInstancesResponse": { + "id": "ListInstancesResponse", + "type": "object", + "description": "Response message for `Instances.ListInstances`.", + "properties": { + "instances": { + "type": "array", + "description": "The instances belonging to the requested version.", + "items": { + "$ref": "Instance" + } + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results." + } + } + }, + "DebugInstanceRequest": { + "id": "DebugInstanceRequest", + "type": "object", + "description": "Request message for `Instances.DebugInstance`." + }, + "ListLocationsResponse": { + "id": "ListLocationsResponse", + "type": "object", + "description": "The response message for LocationService.ListLocations.", + "properties": { + "locations": { + "type": "array", + "description": "A list of locations that matches the specified filter in the request.", + "items": { + "$ref": "Location" + } + }, + "nextPageToken": { + "type": "string", + "description": "The standard List next-page token." + } + } + }, + "Location": { + "id": "Location", + "type": "object", + "description": "A resource that represents Google Cloud Platform location.", + "properties": { + "name": { + "type": "string", + "description": "Resource name for the location, which may vary between implementations. For example: `\"projects/example-project/locations/us-east1\"`" + }, + "locationId": { + "type": "string", + "description": "The cononical id for this location. For example: `\"us-east1\"`." + }, + "labels": { + "type": "object", + "description": "Cross-service attributes for the location. For example {\"cloud.googleapis.com/region\": \"us-east1\"}", + "additionalProperties": { + "type": "string" + } + }, + "metadata": { + "type": "object", + "description": "Service-specific metadata. For example the available capacity at the given location.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } + } + } + }, "OperationMetadata": { "id": "OperationMetadata", "type": "object", @@ -1039,27 +1187,27 @@ "properties": { "operationType": { "type": "string", - "description": "The type of the operation (deprecated, use method field instead). Example: \"create_version\". @OutputOnly" + "description": "Type of this operation. Deprecated, use method field instead. Example: \"create_version\". @OutputOnly" }, "insertTime": { "type": "string", - "description": "Timestamp that this operation was received. @OutputOnly" + "description": "Timestamp that this operation was created. @OutputOnly" }, "endTime": { "type": "string", - "description": "Timestamp that this operation was completed. (Not present if the operation is still in progress.) @OutputOnly" + "description": "Timestamp that this operation completed. @OutputOnly" }, "user": { "type": "string", - "description": "The user who requested this operation. @OutputOnly" + "description": "User who requested this operation. @OutputOnly" }, "target": { "type": "string", - "description": "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/modules/default`. @OutputOnly" }, "method": { "type": "string", - "description": "API method name that initiated the operation. Example: \"google.appengine.v1beta4.Version.CreateVersion\". @OutputOnly" + "description": "API method that initiated this operation. Example: `google.appengine.v1beta4.Version.CreateVersion`. @OutputOnly" } } }, @@ -1070,23 +1218,65 @@ "properties": { "method": { "type": "string", - "description": "API method name that initiated the operation. Example: \"google.appengine.v1beta5.Version.CreateVersion\". @OutputOnly" + "description": "API method name that initiated this operation. Example: `google.appengine.v1beta5.Version.CreateVersion`. @OutputOnly" }, "insertTime": { "type": "string", - "description": "Timestamp that this operation was received. @OutputOnly" + "description": "Timestamp that this operation was created. @OutputOnly" }, "endTime": { "type": "string", - "description": "Timestamp that this operation was completed. (Not present if the operation is still in progress.) @OutputOnly" + "description": "Timestamp that this operation completed. @OutputOnly" }, "user": { "type": "string", - "description": "The user who requested this operation. @OutputOnly" + "description": "User who requested this operation. @OutputOnly" }, "target": { "type": "string", - "description": "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/services/default`. @OutputOnly" + } + } + }, + "OperationMetadataV1": { + "id": "OperationMetadataV1", + "type": "object", + "description": "Metadata for the given google.longrunning.Operation.", + "properties": { + "method": { + "type": "string", + "description": "API method that initiated this operation. Example: `google.appengine.v1.Versions.CreateVersion`. @OutputOnly" + }, + "insertTime": { + "type": "string", + "description": "Time that this operation was created. @OutputOnly" + }, + "endTime": { + "type": "string", + "description": "Time that this operation completed. @OutputOnly" + }, + "user": { + "type": "string", + "description": "User who requested this operation. @OutputOnly" + }, + "target": { + "type": "string", + "description": "Name of the resource that this operation is acting on. Example: `apps/myapp/services/default`. @OutputOnly" + } + } + }, + "LocationMetadata": { + "id": "LocationMetadata", + "type": "object", + "description": "Metadata for the given google.cloud.location.Location.", + "properties": { + "standardEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Standard Environment is available in the given location. @OutputOnly" + }, + "flexibleEnvironmentAvailable": { + "type": "boolean", + "description": "App Engine Flexible Environment is available in the given location. @OutputOnly" } } } @@ -1094,6 +1284,21 @@ "resources": { "apps": { "methods": { + "create": { + "id": "appengine.apps.create", + "path": "v1beta5/apps", + "httpMethod": "POST", + "description": "Creates an App Engine application for a Google Cloud Platform project. This requires a project that excludes an App Engine application. For details about creating a project without an application, see the [Google Cloud Resource Manager create project topic](https://cloud.google.com/resource-manager/docs/creating-project).", + "request": { + "$ref": "Application" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, "get": { "id": "appengine.apps.get", "path": "v1beta5/apps/{appsId}", @@ -1102,7 +1307,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the application to get. For example: \"apps/myapp\".", + "description": "Part of `name`. Name of the application to get. Example: `apps/myapp`.", "required": true, "location": "path" }, @@ -1203,11 +1408,11 @@ "id": "appengine.apps.services.delete", "path": "v1beta5/apps/{appsId}/services/{servicesId}", "httpMethod": "DELETE", - "description": "Deletes a service and all enclosed versions.", + "description": "Deletes the specified service and all enclosed versions.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default`.", "required": true, "location": "path" }, @@ -1233,11 +1438,11 @@ "id": "appengine.apps.services.get", "path": "v1beta5/apps/{appsId}/services/{servicesId}", "httpMethod": "GET", - "description": "Gets the current configuration of the service.", + "description": "Gets the current configuration of the specified service.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default`.", "required": true, "location": "path" }, @@ -1267,7 +1472,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp`.", "required": true, "location": "path" }, @@ -1301,7 +1506,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default\".", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/services/default`.", "required": true, "location": "path" }, @@ -1318,7 +1523,7 @@ }, "migrateTraffic": { "type": "boolean", - "description": "Whether to use Traffic Migration to shift traffic gradually. Traffic can only be migrated from a single version to another single version.", + "description": "Set to `true` to gradually shift traffic from one version to another single version. By default, traffic is shifted immediately. For gradual traffic migration, the target version must be located within instances that are configured for both [warmup requests](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#inboundservicetype) and [automatic scaling](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services.versions#automaticscaling). You must specify the [`shardBy`](https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1beta5/apps.services#shardby) field in the Service resource. Gradual traffic migration is not supported in the App Engine flexible environment. For examples, see [Migrating and Splitting Traffic](https://cloud.google.com/appengine/docs/admin-api/migrating-splitting-traffic).", "location": "query" } }, @@ -1344,7 +1549,7 @@ "id": "appengine.apps.services.versions.create", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions", "httpMethod": "POST", - "description": "Deploys new code and resource files to a version.", + "description": "Deploys new code and resource files to a new version.", "parameters": { "appsId": { "type": "string", @@ -1381,7 +1586,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default/versions/v1\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1`.", "required": true, "location": "path" }, @@ -1414,11 +1619,11 @@ "id": "appengine.apps.services.versions.get", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "httpMethod": "GET", - "description": "Gets application deployment information.", + "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.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default/versions/v1\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1`.", "required": true, "location": "path" }, @@ -1464,7 +1669,7 @@ "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default\".", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default`.", "required": true, "location": "path" }, @@ -1510,11 +1715,11 @@ "id": "appengine.apps.services.versions.patch", "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}", "httpMethod": "PATCH", - "description": "Updates an existing version. Note: UNIMPLEMENTED.", + "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: * [`serving_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. * [`instance_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. * [`automatic_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. * [`automatic_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.", "parameters": { "appsId": { "type": "string", - "description": "Part of `name`. Name of the resource to update. For example: \"apps/myapp/services/default/versions/1\".", + "description": "Part of `name`. Name of the resource to update. Example: `apps/myapp/services/default/versions/1`.", "required": true, "location": "path" }, @@ -1551,9 +1756,271 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "instances": { + "methods": { + "delete": { + "id": "appengine.apps.services.versions.instances.delete", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "DELETE", + "description": "Stops a running instance.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. For example: \"apps/myapp/services/default/versions/v1/instances/instance-1\".", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.services.versions.instances.get", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}", + "httpMethod": "GET", + "description": "Gets instance information.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "list": { + "id": "appengine.apps.services.versions.instances.list", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances", + "httpMethod": "GET", + "description": "Lists the instances of a version.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "Maximum results to return per page.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Continuation token for fetching the next page of results.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId" + ], + "response": { + "$ref": "ListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "debug": { + "id": "appengine.apps.services.versions.instances.debug", + "path": "v1beta5/apps/{appsId}/services/{servicesId}/versions/{versionsId}/instances/{instancesId}:debug", + "httpMethod": "POST", + "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.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Name of the resource requested. Example: `apps/myapp/services/default/versions/v1/instances/instance-1`.", + "required": true, + "location": "path" + }, + "servicesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "versionsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + }, + "instancesId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "servicesId", + "versionsId", + "instancesId" + ], + "request": { + "$ref": "DebugInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } } } + }, + "locations": { + "methods": { + "list": { + "id": "appengine.apps.locations.list", + "path": "v1beta5/apps/{appsId}/locations", + "httpMethod": "GET", + "description": "Lists information about the supported locations for this service.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. The resource that owns the locations collection, if applicable.", + "required": true, + "location": "path" + }, + "filter": { + "type": "string", + "description": "The standard list filter.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "The standard list page size.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The standard list page token.", + "location": "query" + } + }, + "parameterOrder": [ + "appsId" + ], + "response": { + "$ref": "ListLocationsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "appengine.apps.locations.get", + "path": "v1beta5/apps/{appsId}/locations/{locationsId}", + "httpMethod": "GET", + "description": "Get information about a location.", + "parameters": { + "appsId": { + "type": "string", + "description": "Part of `name`. Resource name for the location.", + "required": true, + "location": "path" + }, + "locationsId": { + "type": "string", + "description": "Part of `name`. See documentation of `appsId`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "appsId", + "locationsId" + ], + "response": { + "$ref": "Location" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } } } } diff --git a/etc/api/appsactivity/v1/appsactivity-api.json b/etc/api/appsactivity/v1/appsactivity-api.json index 72b02c25a0..baf1924b02 100644 --- a/etc/api/appsactivity/v1/appsactivity-api.json +++ b/etc/api/appsactivity/v1/appsactivity-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/oEN2Yz1UYeuuQF-hTipAUfX2Yb8\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Yn-vD22SJyy2Enea8C6suJXByIU\"", "discoveryVersion": "v1", "id": "appsactivity:v1", "name": "appsactivity", "version": "v1", - "revision": "20160129", + "revision": "20160805", "title": "Google Apps Activity API", "description": "Provides a historical view of activity.", "ownerDomain": "google.com", diff --git a/etc/api/appstate/v1/appstate-api.json b/etc/api/appstate/v1/appstate-api.json index 95f3fe3dcd..e4d0ac8885 100644 --- a/etc/api/appstate/v1/appstate-api.json +++ b/etc/api/appstate/v1/appstate-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/K6eN4o-EiSpUkE-ew6yjfVfKuII\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/H2gPE9k-JTZqVa4GXSjOgiuxTK0\"", "discoveryVersion": "v1", "id": "appstate:v1", "name": "appstate", "canonicalName": "App State", "version": "v1", - "revision": "20160331", + "revision": "20160901", "title": "Google App State API", "description": "The Google App State API.", "ownerDomain": "google.com", diff --git a/etc/api/bigquery/v2/bigquery-api.json b/etc/api/bigquery/v2/bigquery-api.json index bd2bfad7e1..a2d5c9f6a3 100644 --- a/etc/api/bigquery/v2/bigquery-api.json +++ b/etc/api/bigquery/v2/bigquery-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/sNb4igYg4wCeulufFNSiGUjvhBU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/VlhO-7U_LLGUoZP3BlsW4eOrFfk\"", "discoveryVersion": "v1", "id": "bigquery:v2", "name": "bigquery", "version": "v2", - "revision": "20160408", + "revision": "20160903", "title": "BigQuery API", "description": "A data platform for customers to create, manage, share and query data.", "ownerDomain": "google.com", @@ -27,11 +27,9 @@ "description": "Data format for the response.", "default": "json", "enum": [ - "csv", "json" ], "enumDescriptions": [ - "Responses with Content-Type of text/csv", "Responses with Content-Type of application/json" ], "location": "query" @@ -122,7 +120,7 @@ }, "type": { "type": "string", - "description": "[Optional] The type to convert the value in cells of this column. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Defaut type is BYTES. 'type' can also be set at the column family level. However, the setting at this level takes precedence if 'type' is set at both levels." + "description": "[Optional] The type to convert the value in cells of this column. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. 'type' can also be set at the column family level. However, the setting at this level takes precedence if 'type' is set at both levels." } } }, @@ -151,7 +149,7 @@ }, "type": { "type": "string", - "description": "[Optional] The type to convert the value in cells of this column family. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Defaut type is BYTES. This can be overridden for a specific column by listing that column in 'columns' and specifying a type for it." + "description": "[Optional] The type to convert the value in cells of this column family. The values are expected to be encoded using HBase Bytes.toBytes function when using the BINARY encoding value. Following BigQuery types are allowed (case-sensitive) - BYTES STRING INTEGER FLOAT BOOLEAN Default type is BYTES. This can be overridden for a specific column by listing that column in 'columns' and specifying a type for it." } } }, @@ -169,6 +167,10 @@ "ignoreUnspecifiedColumnFamilies": { "type": "boolean", "description": "[Optional] If field is true, then the column families that are not specified in columnFamilies list are not exposed in the table schema. Otherwise, they are read with BYTES type values. The default value is false." + }, + "readRowkeyAsString": { + "type": "boolean", + "description": "[Optional] If field is true, then the rowkey column families will be read and converted to string. Otherwise they are read with BYTES type values and users need to manually cast them with CAST if necessary. The default value is false." } } }, @@ -199,9 +201,9 @@ "pattern": ".?" }, "skipLeadingRows": { - "type": "integer", + "type": "string", "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", - "format": "int32" + "format": "int64" } } }, @@ -277,6 +279,13 @@ "description": "[Output-only] The resource type.", "default": "bigquery#dataset" }, + "labels": { + "type": "object", + "description": "[Experimental] The labels associated with this dataset. You can use these to organize and group your datasets. You can set this property when inserting or updating a dataset. See Labeling Datasets for more information.", + "additionalProperties": { + "type": "string" + } + }, "lastModifiedTime": { "type": "string", "description": "[Output-only] The date when this dataset or any of its tables was last modified, in milliseconds since the epoch.", @@ -318,6 +327,13 @@ "type": "string", "description": "The resource type. This property always returns the value \"bigquery#dataset\".", "default": "bigquery#dataset" + }, + "labels": { + "type": "object", + "description": "[Experimental] The labels associated with this dataset. You can use these to organize and group your datasets.", + "additionalProperties": { + "type": "string" + } } } } @@ -492,6 +508,10 @@ "$ref": "CsvOptions", "description": "Additional properties to set if sourceFormat is set to CSV." }, + "googleSheetsOptions": { + "$ref": "GoogleSheetsOptions", + "description": "[Optional] Additional options if sourceFormat is set to GOOGLE_SHEETS." + }, "ignoreUnknownValues": { "type": "boolean", "description": "[Optional] Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don't match any column names Google Cloud Bigtable: This setting is ignored. Google Cloud Datastore backups: This setting is ignored. Avro: This setting is ignored." @@ -507,11 +527,11 @@ }, "sourceFormat": { "type": "string", - "description": "[Required] The data format. For CSV files, specify \"CSV\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Experimental] For Google Cloud Bigtable, specify \"BIGTABLE\". Please note that reading from Google Cloud Bigtable is experimental and has to be enabled for your project. Please contact Google Cloud Support to enable this for your project." + "description": "[Required] The data format. For CSV files, specify \"CSV\". For Google sheets, specify \"GOOGLE_SHEETS\". For newline-delimited JSON, specify \"NEWLINE_DELIMITED_JSON\". For Avro files, specify \"AVRO\". For Google Cloud Datastore backups, specify \"DATASTORE_BACKUP\". [Experimental] For Google Cloud Bigtable, specify \"BIGTABLE\". Please note that reading from Google Cloud Bigtable is experimental and has to be enabled for your project. Please contact Google Cloud Support to enable this for your project." }, "sourceUris": { "type": "array", - "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources, plus an additional limit of 10 GB maximum size across all URIs. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups, exactly one URI can be specified, and it must end with '.backup_info'. Also, the '*' wildcard character is not allowed.", + "description": "[Required] The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one '*' wildcard character and it must come after the 'bucket' name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups, exactly one URI can be specified, and it must end with '.backup_info'. Also, the '*' wildcard character is not allowed.", "items": { "type": "string" } @@ -550,6 +570,11 @@ "description": "The resource type of the response.", "default": "bigquery#getQueryResultsResponse" }, + "numDmlAffectedRows": { + "type": "string", + "description": "[Output-only, Experimental] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64" + }, "pageToken": { "type": "string", "description": "A token used for paging results." @@ -577,16 +602,14 @@ } } }, - "IntervalPartitionConfiguration": { - "id": "IntervalPartitionConfiguration", + "GoogleSheetsOptions": { + "id": "GoogleSheetsOptions", "type": "object", "properties": { - "expirationMs": { + "skipLeadingRows": { "type": "string", + "description": "[Optional] The number of rows at the top of a sheet that BigQuery will skip when reading the data. The default value is 0. This property is useful if you have header rows that should be skipped. When autodetect is on, behavior is the following: * skipLeadingRows unspecified - Autodetect tries to detect headers in the first row. If they are not detected, the row is read as data. Otherwise data is read starting from the second row. * skipLeadingRows is 0 - Instructs autodetect that there are no headers and data should be read starting from the first row. * skipLeadingRows = N \u003e 0 - Autodetect skips N-1 rows and tries to detect headers in row N. If headers are not detected, row N is just skipped. Otherwise row N is used to extract column names for the detected schema.", "format": "int64" - }, - "type": { - "type": "string" } } }, @@ -724,6 +747,10 @@ "type": "boolean", "description": "Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false." }, + "autodetect": { + "type": "boolean", + "description": "[Experimental] Indicates if we should automatically infer the options and schema for CSV and JSON sources." + }, "createDisposition": { "type": "string", "description": "[Optional] Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a 'notFound' error is returned in the job result. The default value is CREATE_IF_NEEDED. Creation, truncation and append actions occur as one atomic update upon job completion." @@ -774,6 +801,13 @@ "type": "string", "description": "[Deprecated] The format of the schemaInline property." }, + "schemaUpdateOptions": { + "type": "array", + "description": "[Experimental] Allows the schema of the desitination table to be updated as a side effect of the load job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", + "items": { + "type": "string" + } + }, "skipLeadingRows": { "type": "integer", "description": "[Optional] The number of rows at the top of a CSV file that BigQuery will skip when loading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped.", @@ -827,6 +861,15 @@ "default": "1", "format": "int32" }, + "maximumBytesBilled": { + "type": "string", + "description": "[Optional] Limits the bytes billed for this job. Queries that will have bytes billed beyond this limit will fail (without incurring a charge). If unspecified, this will be set to your project default.", + "format": "int64" + }, + "parameterMode": { + "type": "string", + "description": "[Experimental] Standard SQL only. Whether to use positional (?) or named (@myparam) query parameters in this query." + }, "preserveNulls": { "type": "boolean", "description": "[Deprecated] This property is deprecated." @@ -839,6 +882,20 @@ "type": "string", "description": "[Required] BigQuery SQL query to execute." }, + "queryParameters": { + "type": "array", + "description": "[Experimental] Query parameters for Standard SQL queries.", + "items": { + "$ref": "QueryParameter" + } + }, + "schemaUpdateOptions": { + "type": "array", + "description": "[Experimental] Allows the schema of the desitination table to be updated as a side effect of the query job. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.", + "items": { + "type": "string" + } + }, "tableDefinitions": { "type": "object", "description": "[Optional] If querying an external data source outside of BigQuery, describes the data format, location and other properties of the data source. By defining these properties, the data source can then be queried as if it were a standard BigQuery table.", @@ -848,7 +905,7 @@ }, "useLegacySql": { "type": "boolean", - "description": "[Experimental] Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's updated SQL dialect with improved standards compliance. When using BigQuery's updated SQL, the values of allowLargeResults and flattenResults are ignored. Queries with useLegacySql set to false will be run as if allowLargeResults is true and flattenResults is false." + "description": "[Experimental] Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the values of allowLargeResults and flattenResults are ignored; query will be run as if allowLargeResults is true and flattenResults is false." }, "useQueryCache": { "type": "boolean", @@ -1037,9 +1094,14 @@ "type": "boolean", "description": "[Output-only] Whether the query result was fetched from the query cache." }, + "numDmlAffectedRows": { + "type": "string", + "description": "[Output-only, Experimental] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64" + }, "queryPlan": { "type": "array", - "description": "[Output-only, Experimental] Describes execution plan for the query as a list of stages.", + "description": "[Output-only, Experimental] Describes execution plan for the query.", "items": { "$ref": "ExplainQueryStage" } @@ -1051,6 +1113,10 @@ "$ref": "TableReference" } }, + "schema": { + "$ref": "TableSchema", + "description": "[Output-only, Experimental] The schema of the results. Present only for successful dry run of non-legacy SQL queries." + }, "totalBytesBilled": { "type": "string", "description": "[Output-only] Total bytes billed for the job.", @@ -1060,6 +1126,13 @@ "type": "string", "description": "[Output-only] Total bytes processed for the job.", "format": "int64" + }, + "undeclaredQueryParameters": { + "type": "array", + "description": "[Output-only, Experimental] Standard SQL only: list of undeclared query parameters detected during a dry run validation.", + "items": { + "$ref": "QueryParameter" + } } } }, @@ -1201,6 +1274,83 @@ } } }, + "QueryParameter": { + "id": "QueryParameter", + "type": "object", + "properties": { + "name": { + "type": "string", + "description": "[Optional] If unset, this is a positional parameter. Otherwise, should be unique within a query." + }, + "parameterType": { + "$ref": "QueryParameterType", + "description": "[Required] The type of this parameter." + }, + "parameterValue": { + "$ref": "QueryParameterValue", + "description": "[Required] The value of this parameter." + } + } + }, + "QueryParameterType": { + "id": "QueryParameterType", + "type": "object", + "properties": { + "arrayType": { + "$ref": "QueryParameterType", + "description": "[Optional] The type of the array's elements, if this is an array." + }, + "structTypes": { + "type": "array", + "description": "[Optional] The types of the fields of this struct, in order, if this is a struct.", + "items": { + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "[Optional] Human-oriented description of the field." + }, + "name": { + "type": "string", + "description": "[Optional] The name of this field." + }, + "type": { + "$ref": "QueryParameterType", + "description": "[Required] The type of this field." + } + } + } + }, + "type": { + "type": "string", + "description": "[Required] The top level type of this field." + } + } + }, + "QueryParameterValue": { + "id": "QueryParameterValue", + "type": "object", + "properties": { + "arrayValues": { + "type": "array", + "description": "[Optional] The array values, if this is an array type.", + "items": { + "$ref": "QueryParameterValue" + } + }, + "structValues": { + "type": "object", + "description": "[Optional] The struct field values, in order of the struct type's declaration.", + "additionalProperties": { + "$ref": "QueryParameterValue" + } + }, + "value": { + "type": "string", + "description": "[Optional] The value of this value, if a simple scalar type." + } + } + }, "QueryRequest": { "id": "QueryRequest", "type": "object", @@ -1223,6 +1373,10 @@ "description": "[Optional] The maximum number of rows of data to return per page of results. Setting this flag to a small value such as 1000 and then paging through results might improve reliability when the query result set is large. In addition to this limit, responses are also limited to 10 MB. By default, there is no maximum row count, and only the byte limit applies.", "format": "uint32" }, + "parameterMode": { + "type": "string", + "description": "[Experimental] Standard SQL only. Whether to use positional (?) or named (@myparam) query parameters in this query." + }, "preserveNulls": { "type": "boolean", "description": "[Deprecated] This property is deprecated." @@ -1236,6 +1390,13 @@ ] } }, + "queryParameters": { + "type": "array", + "description": "[Experimental] Query parameters for Standard SQL queries.", + "items": { + "$ref": "QueryParameter" + } + }, "timeoutMs": { "type": "integer", "description": "[Optional] How long to wait for the query to complete, in milliseconds, before the request times out and returns. Note that this is only a timeout for the request, not the query. If the query takes longer to run than the timeout value, the call returns without any results and with the 'jobComplete' flag set to false. You can call GetQueryResults() to wait for the query to complete and read the results. The default value is 10000 milliseconds (10 seconds).", @@ -1243,7 +1404,8 @@ }, "useLegacySql": { "type": "boolean", - "description": "[Experimental] Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's updated SQL dialect with improved standards compliance. When using BigQuery's updated SQL, the values of allowLargeResults and flattenResults are ignored. Queries with useLegacySql set to false will be run as if allowLargeResults is true and flattenResults is false." + "description": "[Experimental] Specifies whether to use BigQuery's legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ When useLegacySql is set to false, the values of allowLargeResults and flattenResults are ignored; query will be run as if allowLargeResults is true and flattenResults is false.", + "default": "true" }, "useQueryCache": { "type": "boolean", @@ -1280,6 +1442,11 @@ "description": "The resource type.", "default": "bigquery#queryResponse" }, + "numDmlAffectedRows": { + "type": "string", + "description": "[Output-only, Experimental] The number of rows affected by a DML statement. Present only for DML statements INSERT, UPDATE or DELETE.", + "format": "int64" + }, "pageToken": { "type": "string", "description": "A token used for paging results." @@ -1381,18 +1548,16 @@ "description": "[Output-only] The size of this table in bytes, excluding any data in the streaming buffer.", "format": "int64" }, + "numLongTermBytes": { + "type": "string", + "description": "[Output-only] The number of bytes in the table that are considered \"long-term storage\".", + "format": "int64" + }, "numRows": { "type": "string", "description": "[Output-only] The number of rows of data in this table, excluding any data in the streaming buffer.", "format": "uint64" }, - "partitionConfigurations": { - "type": "array", - "description": "[Experimental] List of partition configurations for this table. Currently only one configuration can be specified and it can only be an interval partition with type daily.", - "items": { - "$ref": "TablePartitionConfiguration" - } - }, "schema": { "$ref": "TableSchema", "description": "[Optional] Describes the schema of this table." @@ -1409,6 +1574,10 @@ "$ref": "TableReference", "description": "[Required] Reference describing the ID of this table." }, + "timePartitioning": { + "$ref": "TimePartitioning", + "description": "[Experimental] If specified, configures time-based partitioning for this table." + }, "type": { "type": "string", "description": "[Output-only] Describes the table type. The following values are supported: TABLE: A normal BigQuery table. VIEW: A virtual table defined by a SQL query. EXTERNAL: A table that references data stored in an external storage system, such as Google Cloud Storage. The default value is TABLE." @@ -1614,17 +1783,6 @@ } } }, - "TablePartitionConfiguration": { - "id": "TablePartitionConfiguration", - "type": "object", - "description": "[Required] A partition configuration. Only one type of partition should be configured.", - "properties": { - "interval": { - "$ref": "IntervalPartitionConfiguration", - "description": "[Pick one] Configures an interval partition." - } - } - }, "TableReference": { "id": "TableReference", "type": "object", @@ -1684,6 +1842,21 @@ } } }, + "TimePartitioning": { + "id": "TimePartitioning", + "type": "object", + "properties": { + "expirationMs": { + "type": "string", + "description": "[Optional] Number of milliseconds for which to keep the storage for a partition.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "[Required] The only type supported is DAY, which will generate one partition per day based on data loading time." + } + } + }, "UserDefinedFunctionResource": { "id": "UserDefinedFunctionResource", "type": "object", @@ -1706,6 +1879,10 @@ "type": "string", "description": "[Required] A query that BigQuery executes when the view is referenced." }, + "useLegacySql": { + "type": "boolean", + "description": "[Experimental] Specifies whether to use BigQuery's legacy SQL for this view. The default value is true. If set to false, the view will use BigQuery's standard SQL: https://cloud.google.com/bigquery/sql-reference/ Queries and views that reference this view must use the same flag value." + }, "userDefinedFunctionResources": { "type": "array", "description": "[Experimental] Describes user-defined function resources used in the query.", @@ -1822,6 +1999,11 @@ "description": "Whether to list all datasets, including hidden ones", "location": "query" }, + "filter": { + "type": "string", + "description": "An expression for filtering the results of the request by label. The syntax is \"labels.\u003cname\u003e[:\u003cvalue\u003e]\". Multiple filters can be ANDed together by connecting with a space. Example: \"labels.department:receiving labels.active\". See Filtering datasets using labels for details.", + "location": "query" + }, "maxResults": { "type": "integer", "description": "The maximum number of results to return", @@ -1926,7 +2108,7 @@ "methods": { "cancel": { "id": "bigquery.jobs.cancel", - "path": "project/{projectId}/jobs/{jobId}/cancel", + "path": "projects/{projectId}/jobs/{jobId}/cancel", "httpMethod": "POST", "description": "Requests that a job be cancelled. This call will return immediately, and the client will need to poll for the job status to see if the cancel completed successfully. Cancelled jobs may still incur costs.", "parameters": { diff --git a/etc/api/blogger/v2/blogger-api.json b/etc/api/blogger/v2/blogger-api.json index 20e5b269e6..e8a736cef8 100644 --- a/etc/api/blogger/v2/blogger-api.json +++ b/etc/api/blogger/v2/blogger-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Mm4a0u3lPNBqEzKCYhfhIpC2Mw4\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Mm4a0u3lPNBqEzKCYhfhIpC2Mw4\"", "discoveryVersion": "v1", "id": "blogger:v2", "name": "blogger", diff --git a/etc/api/blogger/v3/blogger-api.json b/etc/api/blogger/v3/blogger-api.json index 2f8d2ec264..f7939da06c 100644 --- a/etc/api/blogger/v3/blogger-api.json +++ b/etc/api/blogger/v3/blogger-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Goh5bsNuqq7lTY-yMf_QcKSL760\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Goh5bsNuqq7lTY-yMf_QcKSL760\"", "discoveryVersion": "v1", "id": "blogger:v3", "name": "blogger", diff --git a/etc/api/books/v1/books-api.json b/etc/api/books/v1/books-api.json index 7b97893a37..f4c65c9bff 100644 --- a/etc/api/books/v1/books-api.json +++ b/etc/api/books/v1/books-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/fQ7gMSQqLPLbacQ9HzpdBnMKn-E\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/uxsTh9MpfXBIfQELnET3_c75CbQ\"", "discoveryVersion": "v1", "id": "books:v1", "name": "books", "version": "v1", - "revision": "20160226", + "revision": "20160823", "title": "Books API", - "description": "Lets you search for books and manage your Google Books library.", + "description": "Searches for books and manages your Google Books library.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -1141,6 +1141,20 @@ "body": { "type": "string" }, + "crmExperimentIds": { + "type": "array", + "description": "The list of crm experiment ids.", + "items": { + "type": "string", + "format": "int64" + } + }, + "doc_id": { + "type": "string" + }, + "doc_type": { + "type": "string" + }, "dont_show_notification": { "type": "boolean" }, @@ -1434,6 +1448,14 @@ "type": "string" } } + }, + "moreFromSeries": { + "type": "object", + "properties": { + "opted_state": { + "type": "string" + } + } } } } @@ -1621,6 +1643,10 @@ "description": "The finsky offer type (e.g., PURCHASE=0 RENTAL=3)", "format": "int32" }, + "giftable": { + "type": "boolean", + "description": "Indicates whether the offer is giftable." + }, "listPrice": { "type": "object", "description": "Offer list (=undiscounted) price in Micros.", @@ -1743,6 +1769,24 @@ "description": "Whether this volume is purchased, sample, pd download etc.", "format": "int32" }, + "familySharing": { + "type": "object", + "description": "Information on the ability to share with the family.", + "properties": { + "familyRole": { + "type": "string", + "description": "The role of the user in the family." + }, + "isSharingAllowed": { + "type": "boolean", + "description": "Whether or not this volume can be shared with the family by the user. This includes sharing eligibility of both the volume and the user. If the value is true, the user can initiate a family sharing action." + }, + "isSharingDisabledByFop": { + "type": "boolean", + "description": "Whether or not sharing this volume is temporarily disabled due to issues with the Family Wallet." + } + } + }, "isFamilySharedFromUser": { "type": "boolean", "description": "Whether or not the user shared this volume with the family." @@ -1753,7 +1797,11 @@ }, "isFamilySharingAllowed": { "type": "boolean", - "description": "Whether or not this volume can be shared with the family by the user. This includes sharing eligibility of both the volume and the user. If the value is true, the user can initiate a family sharing action." + "description": "Deprecated: Replaced by familySharing." + }, + "isFamilySharingDisabledByFop": { + "type": "boolean", + "description": "Deprecated: Replaced by familySharing." }, "isInMyBooks": { "type": "boolean", @@ -1936,6 +1984,24 @@ "description": "Total number of pages as per publisher metadata.", "format": "int32" }, + "panelizationSummary": { + "type": "object", + "description": "A top-level summary of the panelization info in this volume.", + "properties": { + "containsEpubBubbles": { + "type": "boolean" + }, + "containsImageBubbles": { + "type": "boolean" + }, + "epubBubbleVersion": { + "type": "string" + }, + "imageBubbleVersion": { + "type": "string" + } + } + }, "previewLink": { "type": "string", "description": "URL to preview this volume on the Google Books site." @@ -4118,6 +4184,19 @@ ], "location": "query" }, + "maxAllowedMaturityRating": { + "type": "string", + "description": "The maximum allowed maturity rating of returned recommendations. Books with a higher maturity rating are filtered out.", + "enum": [ + "mature", + "not-mature" + ], + "enumDescriptions": [ + "Show books which are rated mature or lower.", + "Show books which are rated not mature." + ], + "location": "query" + }, "maxResults": { "type": "integer", "description": "Maximum number of results to return.", @@ -4283,8 +4362,9 @@ "parameters": { "acquireMethod": { "type": "string", - "description": "How the book was aquired", + "description": "How the book was acquired", "enum": [ + "FAMILY_SHARED", "PREORDERED", "PREVIOUSLY_RENTED", "PUBLIC_DOMAIN", @@ -4294,6 +4374,7 @@ "UPLOADED" ], "enumDescriptions": [ + "Books acquired via Family Sharing", "Preordered books (not yet available)", "User-rented books past their expiration time", "Public domain books", diff --git a/etc/api/calendar/v3/calendar-api.json b/etc/api/calendar/v3/calendar-api.json index 7b933467e5..1697722fb1 100644 --- a/etc/api/calendar/v3/calendar-api.json +++ b/etc/api/calendar/v3/calendar-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/bVW4XkR_BcuuJ80pnL2PPki_lMk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/nazGrDu3ytNkqOugrCdxmMJj71Y\"", "discoveryVersion": "v1", "id": "calendar:v3", "name": "calendar", "version": "v3", - "revision": "20160405", + "revision": "20160830", "title": "Calendar API", "description": "Manipulates events and other calendar data.", "ownerDomain": "google.com", diff --git a/etc/api/civicinfo/v2/civicinfo-api.json b/etc/api/civicinfo/v2/civicinfo-api.json index ce585066bb..d1183ccb7c 100644 --- a/etc/api/civicinfo/v2/civicinfo-api.json +++ b/etc/api/civicinfo/v2/civicinfo-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/m2jEe7hMRh3PEVg32yoWNGLPJKw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/0RRptSlHJI7MXoKAqjNEurqVvHk\"", "discoveryVersion": "v1", "id": "civicinfo:v2", "name": "civicinfo", "canonicalName": "Civic Info", "version": "v2", - "revision": "20150820", + "revision": "20160823", "title": "Google Civic Information API", - "description": "An API for accessing civic information.", + "description": "Provides polling places, early vote locations, contest data, election officials, and government representatives for U.S. residential addresses.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -107,6 +107,12 @@ "type": "string", "description": "A URL provided by this administrative body for information on absentee voting." }, + "addressLines": { + "type": "array", + "items": { + "type": "string" + } + }, "ballotInfoUrl": { "type": "string", "description": "A URL provided by this administrative body to give contest information to the voter." @@ -277,7 +283,7 @@ }, "referendumBallotResponses": { "type": "array", - "description": "The set of ballot responses for the referendum. A ballot response represents a line on the ballot. Common examples might include \"yes\" or \"no\" for referenda, or a judge's name for a retention contest. This field is only populated for contests of type 'Referendum'.", + "description": "The set of ballot responses for the referendum. A ballot response represents a line on the ballot. Common examples might include \"yes\" or \"no\" for referenda. This field is only populated for contests of type 'Referendum'.", "items": { "type": "string" } @@ -338,7 +344,7 @@ }, "type": { "type": "string", - "description": "The type of contest. Usually this will be 'General', 'Primary', or 'Run-off' for contests with candidates. For referenda this will be 'Referendum'." + "description": "The type of contest. Usually this will be 'General', 'Primary', or 'Run-off' for contests with candidates. For referenda this will be 'Referendum'. For Retention contests this will typically be 'Retention'." } } }, @@ -461,6 +467,9 @@ "type": "string", "description": "An identifier for this district, relative to its scope. For example, the 34th State Senate district would have id \"34\" and a scope of stateUpper." }, + "kgForeignKey": { + "type": "string" + }, "name": { "type": "string", "description": "The name of the district." @@ -883,6 +892,12 @@ "description": "If set to true, only data from official state sources will be returned.", "default": "false", "location": "query" + }, + "returnAllAvailableData": { + "type": "boolean", + "description": "If set to true, the query will return the success codeand include any partial information when it is unable to determine a matching address or unable to determine the election for electionId=0 queries.", + "default": "false", + "location": "query" } }, "parameterOrder": [ diff --git a/etc/api/classroom/v1/classroom-api.json b/etc/api/classroom/v1/classroom-api.json index 6d811daf1f..d7af292310 100644 --- a/etc/api/classroom/v1/classroom-api.json +++ b/etc/api/classroom/v1/classroom-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/0oxyHtOr_QdVjtgNcOATGfGDX1k\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/YsDe4FXJlhWXueJei0_RXQqm_4I\"", "discoveryVersion": "v1", "id": "classroom:v1", "name": "classroom", "version": "v1", - "revision": "20151013", + "revision": "20160816", "title": "Google Classroom API", - "description": "Google Classroom API", + "description": "Manages classes, rosters, and invitations in Google Classroom.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -103,12 +103,27 @@ "auth": { "oauth2": { "scopes": { + "https://www.googleapis.com/auth/classroom.course-work.readonly": { + "description": "View instructions for teacher-assigned work in your Google Classroom classes" + }, "https://www.googleapis.com/auth/classroom.courses": { "description": "Manage your Google Classroom classes" }, "https://www.googleapis.com/auth/classroom.courses.readonly": { "description": "View your Google Classroom classes" }, + "https://www.googleapis.com/auth/classroom.coursework.me": { + "description": "Manage your course work and view your grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.coursework.me.readonly": { + "description": "View your course work and grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.coursework.students": { + "description": "Manage course work and grades for students in the Google Classroom classes you teach and view the course work and grades for classes you administer" + }, + "https://www.googleapis.com/auth/classroom.coursework.students.readonly": { + "description": "View course work and grades for students in the Google Classroom classes you teach or administer" + }, "https://www.googleapis.com/auth/classroom.profile.emails": { "description": "View the email addresses of people in your classes" }, @@ -120,6 +135,12 @@ }, "https://www.googleapis.com/auth/classroom.rosters.readonly": { "description": "View your Google Classroom class rosters" + }, + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly": { + "description": "View your course work and grades in Google Classroom" + }, + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly": { + "description": "View course work and grades for students in the Google Classroom classes you teach or administer" } } } @@ -132,7 +153,7 @@ "properties": { "id": { "type": "string", - "description": "Identifier for this course assigned by Classroom. When creating a course, you may optionally set this identifier to an alias string in the request to create a corresponding alias. The `id` is still assigned by Classroom and cannot be updated after the course is created. Specifying this field in a course update mask will result in an error." + "description": "Identifier for this course assigned by Classroom. When creating a course, you may optionally set this identifier to an alias string in the request to create a corresponding alias. The `id` is still assigned by Classroom and cannot be updated after the course is created. Specifying this field in a course update mask results in an error." }, "name": { "type": "string", @@ -156,19 +177,19 @@ }, "ownerId": { "type": "string", - "description": "The identifier of the owner of a course. When specified as a parameter of a create course request, this field is required. 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 This must be set in a create request. Specifying this field in a course update mask will result in an `INVALID_ARGUMENT` error." + "description": "The identifier of the owner of a course. When specified as a parameter of a create course request, this field is required. 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 This must be set in a create request. Specifying this field in a course update mask results in an `INVALID_ARGUMENT` error." }, "creationTime": { "type": "string", - "description": "Creation time of the course. Specifying this field in a course update mask will result in an error. Read-only." + "description": "Creation time of the course. Specifying this field in a course update mask results in an error. Read-only." }, "updateTime": { "type": "string", - "description": "Time of the most recent update to this course. Specifying this field in a course update mask will result in an error. Read-only." + "description": "Time of the most recent update to this course. Specifying this field in a course update mask results in an error. Read-only." }, "enrollmentCode": { "type": "string", - "description": "Enrollment code to use when joining this course. Specifying this field in a course update mask will result in an error. Read-only." + "description": "Enrollment code to use when joining this course. Specifying this field in a course update mask results in an error. Read-only." }, "courseState": { "type": "string", @@ -184,6 +205,173 @@ "alternateLink": { "type": "string", "description": "Absolute link to this course in the Classroom web UI. Read-only." + }, + "teacherGroupEmail": { + "type": "string", + "description": "The email address of a Google group containing all teachers of the course. This group does not accept email and can only be used for permissions. Read-only." + }, + "courseGroupEmail": { + "type": "string", + "description": "The email address of a Google group containing all members of the course. This group does not accept email and can only be used for permissions. Read-only." + }, + "teacherFolder": { + "$ref": "DriveFolder", + "description": "Information about a Drive Folder that is shared with all teachers of the course. This field will only be set for teachers of the course and domain administrators. Read-only." + }, + "courseMaterialSets": { + "type": "array", + "description": "Sets of materials that appear on the \"about\" page of this course. Read-only.", + "items": { + "$ref": "CourseMaterialSet" + } + } + } + }, + "DriveFolder": { + "id": "DriveFolder", + "type": "object", + "description": "Representation of a Google Drive folder.", + "properties": { + "id": { + "type": "string", + "description": "Drive API resource ID." + }, + "title": { + "type": "string", + "description": "Title of the Drive folder. Read-only." + }, + "alternateLink": { + "type": "string", + "description": "URL that can be used to access the Drive folder. Read-only." + } + } + }, + "CourseMaterialSet": { + "id": "CourseMaterialSet", + "type": "object", + "description": "A set of materials that appears on the \"About\" page of the course. These materials might include a syllabus, schedule, or other background information relating to the course as a whole.", + "properties": { + "title": { + "type": "string", + "description": "Title for this set." + }, + "materials": { + "type": "array", + "description": "Materials attached to this set.", + "items": { + "$ref": "CourseMaterial" + } + } + } + }, + "CourseMaterial": { + "id": "CourseMaterial", + "type": "object", + "description": "A material attached to a course as part of a material set.", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Google Drive file attachment." + }, + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." + }, + "link": { + "$ref": "Link", + "description": "Link atatchment." + }, + "form": { + "$ref": "Form", + "description": "Google Forms attachment." + } + } + }, + "DriveFile": { + "id": "DriveFile", + "type": "object", + "description": "Representation of a Google Drive file.", + "properties": { + "id": { + "type": "string", + "description": "Drive API resource ID." + }, + "title": { + "type": "string", + "description": "Title of the Drive item. Read-only." + }, + "alternateLink": { + "type": "string", + "description": "URL that can be used to access the Drive item. Read-only." + }, + "thumbnailUrl": { + "type": "string", + "description": "URL of a thumbnail image of the Drive item. Read-only." + } + } + }, + "YouTubeVideo": { + "id": "YouTubeVideo", + "type": "object", + "description": "YouTube video item.", + "properties": { + "id": { + "type": "string", + "description": "YouTube API resource ID." + }, + "title": { + "type": "string", + "description": "Title of the YouTube video. Read-only." + }, + "alternateLink": { + "type": "string", + "description": "URL that can be used to view the YouTube video. Read-only." + }, + "thumbnailUrl": { + "type": "string", + "description": "URL of a thumbnail image of the YouTube video. Read-only." + } + } + }, + "Link": { + "id": "Link", + "type": "object", + "description": "URL item.", + "properties": { + "url": { + "type": "string", + "description": "URL to link to. This must be a valid UTF-8 string containing between 1 and 2024 characters." + }, + "title": { + "type": "string", + "description": "Title of the target of the URL. Read-only." + }, + "thumbnailUrl": { + "type": "string", + "description": "URL of a thumbnail image of the target URL. Read-only." + } + } + }, + "Form": { + "id": "Form", + "type": "object", + "description": "Google Forms item.", + "properties": { + "formUrl": { + "type": "string", + "description": "URL of the form." + }, + "responseUrl": { + "type": "string", + "description": "URL of the form responses document. Only set if respsonses have been recorded and only when the requesting user is an editor of the form. Read-only." + }, + "title": { + "type": "string", + "description": "Title of the Form. Read-only." + }, + "thumbnailUrl": { + "type": "string", + "description": "URL of a thumbnail image of the Form. Read-only." } } }, @@ -239,44 +427,16 @@ } } }, - "Invitation": { - "id": "Invitation", + "ListGuardianInvitationsResponse": { + "id": "ListGuardianInvitationsResponse", "type": "object", - "description": "An invitation to join a course.", + "description": "Response when listing guardian invitations.", "properties": { - "id": { - "type": "string", - "description": "Identifier assigned by Classroom. Read-only." - }, - "userId": { - "type": "string", - "description": "Identifier of the invited user. When specified as a parameter of a request, this identifier can be set to one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user" - }, - "courseId": { - "type": "string", - "description": "Identifier of the course to invite the user to." - }, - "role": { - "type": "string", - "description": "Role to invite the user to have. Must not be `COURSE_ROLE_UNSPECIFIED`.", - "enum": [ - "COURSE_ROLE_UNSPECIFIED", - "STUDENT", - "TEACHER" - ] - } - } - }, - "ListInvitationsResponse": { - "id": "ListInvitationsResponse", - "type": "object", - "description": "Response when listing invitations.", - "properties": { - "invitations": { + "guardianInvitations": { "type": "array", - "description": "Invitations that match the list request.", + "description": "Guardian invitations that matched the list request.", "items": { - "$ref": "Invitation" + "$ref": "GuardianInvitation" } }, "nextPageToken": { @@ -285,6 +445,79 @@ } } }, + "GuardianInvitation": { + "id": "GuardianInvitation", + "type": "object", + "description": "An invitation to become the guardian of a specified user, sent to a specified email address.", + "properties": { + "studentId": { + "type": "string", + "description": "ID of the student (in standard format)" + }, + "invitationId": { + "type": "string", + "description": "Unique identifier for this invitation. Read-only." + }, + "invitedEmailAddress": { + "type": "string", + "description": "Email address that the invitation was sent to. This field is only visible to domain administrators." + }, + "state": { + "type": "string", + "description": "The state that this invitation is in.", + "enum": [ + "GUARDIAN_INVITATION_STATE_UNSPECIFIED", + "PENDING", + "COMPLETE" + ] + }, + "creationTime": { + "type": "string", + "description": "The time that this invitation was created. Read-only." + } + } + }, + "ListGuardiansResponse": { + "id": "ListGuardiansResponse", + "type": "object", + "description": "Response when listing guardians.", + "properties": { + "guardians": { + "type": "array", + "description": "Guardians on this page of results that met the criteria specified in the request.", + "items": { + "$ref": "Guardian" + } + }, + "nextPageToken": { + "type": "string", + "description": "Token identifying the next page of results to return. If empty, no further results are available." + } + } + }, + "Guardian": { + "id": "Guardian", + "type": "object", + "description": "Association between a student and a guardian of that student. The guardian may receive information about the student's course work.", + "properties": { + "studentId": { + "type": "string", + "description": "Identifier for the student to whom the guardian relationship applies." + }, + "guardianId": { + "type": "string", + "description": "Identifier for the guardian." + }, + "guardianProfile": { + "$ref": "UserProfile", + "description": "User profile for the guardian." + }, + "invitedEmailAddress": { + "type": "string", + "description": "The email address to which the initial guardian invitation was sent. This field is only visible to domain administrators." + } + } + }, "UserProfile": { "id": "UserProfile", "type": "object", @@ -402,6 +635,10 @@ "profile": { "$ref": "UserProfile", "description": "Global user information for the student. Read-only." + }, + "studentWorkFolder": { + "$ref": "DriveFolder", + "description": "Information about a Drive Folder for this student's work in this course. Only visible to the student and domain administrators. Read-only." } } }, @@ -422,6 +659,477 @@ "description": "Token identifying the next page of results to return. If empty, no further results are available." } } + }, + "Invitation": { + "id": "Invitation", + "type": "object", + "description": "An invitation to join a course.", + "properties": { + "id": { + "type": "string", + "description": "Identifier assigned by Classroom. Read-only." + }, + "userId": { + "type": "string", + "description": "Identifier of the invited user. When specified as a parameter of a request, this identifier can be set to one of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user" + }, + "courseId": { + "type": "string", + "description": "Identifier of the course to invite the user to." + }, + "role": { + "type": "string", + "description": "Role to invite the user to have. Must not be `COURSE_ROLE_UNSPECIFIED`.", + "enum": [ + "COURSE_ROLE_UNSPECIFIED", + "STUDENT", + "TEACHER" + ] + } + } + }, + "ListInvitationsResponse": { + "id": "ListInvitationsResponse", + "type": "object", + "description": "Response when listing invitations.", + "properties": { + "invitations": { + "type": "array", + "description": "Invitations that match the list request.", + "items": { + "$ref": "Invitation" + } + }, + "nextPageToken": { + "type": "string", + "description": "Token identifying the next page of results to return. If empty, no further results are available." + } + } + }, + "CourseWork": { + "id": "CourseWork", + "type": "object", + "description": "Course work created by a teacher for students of the course.", + "properties": { + "courseId": { + "type": "string", + "description": "Identifier of the course. Read-only." + }, + "id": { + "type": "string", + "description": "Classroom-assigned identifier of this course work, unique per course. Read-only." + }, + "title": { + "type": "string", + "description": "Title of this course work. The title must be a valid UTF-8 string containing between 1 and 3000 characters." + }, + "description": { + "type": "string", + "description": "Optional description of this course work. If set, the description must be a valid UTF-8 string containing no more than 30,000 characters." + }, + "materials": { + "type": "array", + "description": "Additional materials. CourseWork must have no more than 20 material items.", + "items": { + "$ref": "Material" + } + }, + "state": { + "type": "string", + "description": "Status of this course work. If unspecified, the default state is `DRAFT`.", + "enum": [ + "COURSE_WORK_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ] + }, + "alternateLink": { + "type": "string", + "description": "Absolute link to this course work in the Classroom web UI. This is only populated if `state` is `PUBLISHED`. Read-only." + }, + "creationTime": { + "type": "string", + "description": "Timestamp when this course work was created. Read-only." + }, + "updateTime": { + "type": "string", + "description": "Timestamp of the most recent change to this course work. Read-only." + }, + "dueDate": { + "$ref": "Date", + "description": "Optional date, in UTC, that submissions for this this course work are due. This must be specified if `due_time` is specified." + }, + "dueTime": { + "$ref": "TimeOfDay", + "description": "Optional time of day, in UTC, that submissions for this this course work are due. This must be specified if `due_date` is specified." + }, + "maxPoints": { + "type": "number", + "description": "Maximum grade for this course work. If zero or unspecified, this assignment is considered ungraded. This must be a non-negative integer value.", + "format": "double" + }, + "workType": { + "type": "string", + "description": "Type of this course work. The type is set when the course work is created and cannot be changed. When creating course work, this must be `ASSIGNMENT`.", + "enum": [ + "COURSE_WORK_TYPE_UNSPECIFIED", + "ASSIGNMENT", + "SHORT_ANSWER_QUESTION", + "MULTIPLE_CHOICE_QUESTION" + ] + }, + "associatedWithDeveloper": { + "type": "boolean", + "description": "Whether this course work item is associated with the Developer Console project making the request. See google.classroom.Work.CreateCourseWork for more details. Read-only." + }, + "submissionModificationMode": { + "type": "string", + "description": "Setting to determine when students are allowed to modify submissions. If unspecified, the default value is `MODIFIABLE_UNTIL_TURNED_IN`.", + "enum": [ + "SUBMISSION_MODIFICATION_MODE_UNSPECIFIED", + "MODIFIABLE_UNTIL_TURNED_IN", + "MODIFIABLE" + ] + }, + "assignment": { + "$ref": "Assignment", + "description": "Assignment details. This is populated only when `work_type` is `ASSIGNMENT`." + }, + "multipleChoiceQuestion": { + "$ref": "MultipleChoiceQuestion", + "description": "Multiple choice question details. This is populated only when `work_type` is `MULTIPLE_CHOICE_QUESTION`." + } + } + }, + "Material": { + "id": "Material", + "type": "object", + "description": "Material attached to course work. When creating attachments, only the Link field may be specified.", + "properties": { + "driveFile": { + "$ref": "SharedDriveFile", + "description": "Google Drive file material." + }, + "youtubeVideo": { + "$ref": "YouTubeVideo", + "description": "YouTube video material." + }, + "link": { + "$ref": "Link", + "description": "Link material." + }, + "form": { + "$ref": "Form", + "description": "Google Forms material." + } + } + }, + "SharedDriveFile": { + "id": "SharedDriveFile", + "type": "object", + "description": "Drive file that is used as material for course work.", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Drive file details." + }, + "shareMode": { + "type": "string", + "description": "Mechanism by which students access the Drive item.", + "enum": [ + "UNKNOWN_SHARE_MODE", + "VIEW", + "EDIT", + "STUDENT_COPY" + ] + } + } + }, + "Date": { + "id": "Date", + "type": "object", + "description": "Represents a whole calendar date, e.g. date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the Proleptic Gregorian Calendar. The day may be 0 to represent a year and month where the day is not significant, e.g. credit card expiration date. The year may be 0 to represent a month and day independent of year, e.g. anniversary date. Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.", + "properties": { + "year": { + "type": "integer", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.", + "format": "int32" + }, + "month": { + "type": "integer", + "description": "Month of year. Must be from 1 to 12.", + "format": "int32" + }, + "day": { + "type": "integer", + "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.", + "format": "int32" + } + } + }, + "TimeOfDay": { + "id": "TimeOfDay", + "type": "object", + "description": "Represents a time of day. The date and time zone are either not significant or are specified elsewhere. An API may chose to allow leap seconds. Related types are google.type.Date and `google.protobuf.Timestamp`.", + "properties": { + "hours": { + "type": "integer", + "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose to allow the value \"24:00:00\" for scenarios like business closing time.", + "format": "int32" + }, + "minutes": { + "type": "integer", + "description": "Minutes of hour of day. Must be from 0 to 59.", + "format": "int32" + }, + "seconds": { + "type": "integer", + "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may allow the value 60 if it allows leap-seconds.", + "format": "int32" + }, + "nanos": { + "type": "integer", + "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.", + "format": "int32" + } + } + }, + "Assignment": { + "id": "Assignment", + "type": "object", + "description": "Additional details for assignments.", + "properties": { + "studentWorkFolder": { + "$ref": "DriveFolder", + "description": "Drive folder where attachments from student submissions are placed. This is only populated for course teachers." + } + } + }, + "MultipleChoiceQuestion": { + "id": "MultipleChoiceQuestion", + "type": "object", + "description": "Additional details for multiple-choice questions.", + "properties": { + "choices": { + "type": "array", + "description": "Possible choices.", + "items": { + "type": "string" + } + } + } + }, + "ListCourseWorkResponse": { + "id": "ListCourseWorkResponse", + "type": "object", + "description": "Response when listing course work.", + "properties": { + "courseWork": { + "type": "array", + "description": "Course work items that match the request.", + "items": { + "$ref": "CourseWork" + } + }, + "nextPageToken": { + "type": "string", + "description": "Token identifying the next page of results to return. If empty, no further results are available." + } + } + }, + "StudentSubmission": { + "id": "StudentSubmission", + "type": "object", + "description": "Student submission for course work. StudentSubmission items are generated when a CourseWork item is created. StudentSubmissions that have never been accessed (i.e. with `state` = NEW) may not have a creation time or update time.", + "properties": { + "courseId": { + "type": "string", + "description": "Identifier of the course. Read-only." + }, + "courseWorkId": { + "type": "string", + "description": "Identifier for the course work this corresponds to. Read-only." + }, + "id": { + "type": "string", + "description": "Classroom-assigned Identifier for the student submission. This is unique among submissions for the relevant course work. Read-only." + }, + "userId": { + "type": "string", + "description": "Identifier for the student that owns this submission. Read-only." + }, + "creationTime": { + "type": "string", + "description": "Creation time of this submission. This may be unset if the student has not accessed this item. Read-only." + }, + "updateTime": { + "type": "string", + "description": "Last update time of this submission. This may be unset if the student has not accessed this item. Read-only." + }, + "state": { + "type": "string", + "description": "State of this submission. Read-only.", + "enum": [ + "SUBMISSION_STATE_UNSPECIFIED", + "NEW", + "CREATED", + "TURNED_IN", + "RETURNED", + "RECLAIMED_BY_STUDENT" + ] + }, + "late": { + "type": "boolean", + "description": "Whether this submission is late. Read-only." + }, + "draftGrade": { + "type": "number", + "description": "Optional pending grade. If unset, no grade was set. This must be a non-negative integer value. This is only visible to and modifiable by course teachers.", + "format": "double" + }, + "assignedGrade": { + "type": "number", + "description": "Optional grade. If unset, no grade was set. This must be a non-negative integer value. This may be modified only by course teachers.", + "format": "double" + }, + "alternateLink": { + "type": "string", + "description": "Absolute link to the submission in the Classroom web UI. Read-only." + }, + "courseWorkType": { + "type": "string", + "description": "Type of course work this submission is for. Read-only.", + "enum": [ + "COURSE_WORK_TYPE_UNSPECIFIED", + "ASSIGNMENT", + "SHORT_ANSWER_QUESTION", + "MULTIPLE_CHOICE_QUESTION" + ] + }, + "associatedWithDeveloper": { + "type": "boolean", + "description": "Whether this student submission is associated with the Developer Console project making the request. See google.classroom.Work.CreateCourseWork for more details. Read-only." + }, + "assignmentSubmission": { + "$ref": "AssignmentSubmission", + "description": "Submission content when course_work_type is ASSIGNMENT ." + }, + "shortAnswerSubmission": { + "$ref": "ShortAnswerSubmission", + "description": "Submission content when course_work_type is SHORT_ANSWER_QUESTION." + }, + "multipleChoiceSubmission": { + "$ref": "MultipleChoiceSubmission", + "description": "Submission content when course_work_type is MULTIPLE_CHOICE_QUESTION." + } + } + }, + "AssignmentSubmission": { + "id": "AssignmentSubmission", + "type": "object", + "description": "Student work for an assignment.", + "properties": { + "attachments": { + "type": "array", + "description": "Attachments added by the student. Drive files that correspond to materials with a share mode of SUBMISSION_COPY may not exist yet if the student has not accessed the assignment in Classroom. Some attachment metadata is only populated if the requesting user has permission to access it. Identifier and alternate_link fields are available, but others (e.g. title) may not be.", + "items": { + "$ref": "Attachment" + } + } + } + }, + "Attachment": { + "id": "Attachment", + "type": "object", + "description": "Attachment added to student assignment work. When creating attachments, only the Link field may be specified.", + "properties": { + "driveFile": { + "$ref": "DriveFile", + "description": "Google Drive file attachment." + }, + "youTubeVideo": { + "$ref": "YouTubeVideo", + "description": "Youtube video attachment." + }, + "link": { + "$ref": "Link", + "description": "Link attachment." + }, + "form": { + "$ref": "Form", + "description": "Google Forms attachment." + } + } + }, + "ShortAnswerSubmission": { + "id": "ShortAnswerSubmission", + "type": "object", + "description": "Student work for a short answer question.", + "properties": { + "answer": { + "type": "string", + "description": "Student response to a short-answer question." + } + } + }, + "MultipleChoiceSubmission": { + "id": "MultipleChoiceSubmission", + "type": "object", + "description": "Student work for a multiple-choice question.", + "properties": { + "answer": { + "type": "string", + "description": "Student's select choice." + } + } + }, + "ListStudentSubmissionsResponse": { + "id": "ListStudentSubmissionsResponse", + "type": "object", + "description": "Response when listing student submissions.", + "properties": { + "studentSubmissions": { + "type": "array", + "description": "Student work that matches the request.", + "items": { + "$ref": "StudentSubmission" + } + }, + "nextPageToken": { + "type": "string", + "description": "Token identifying the next page of results to return. If empty, no further results are available." + } + } + }, + "TurnInStudentSubmissionRequest": { + "id": "TurnInStudentSubmissionRequest", + "type": "object", + "description": "Request to turn in a student submission." + }, + "ReclaimStudentSubmissionRequest": { + "id": "ReclaimStudentSubmissionRequest", + "type": "object", + "description": "Request to reclaim a student submission." + }, + "ReturnStudentSubmissionRequest": { + "id": "ReturnStudentSubmissionRequest", + "type": "object", + "description": "Request to return a student submission." + }, + "ModifyAttachmentsRequest": { + "id": "ModifyAttachmentsRequest", + "type": "object", + "description": "Request to modify the attachments of a student submission.", + "properties": { + "addAttachments": { + "type": "array", + "description": "Attachments to add. A student submission may not have more than 20 attachments. This may only contain link attachments.", + "items": { + "$ref": "Attachment" + } + } + } } }, "resources": { @@ -947,6 +1655,717 @@ ] } } + }, + "courseWork": { + "methods": { + "create": { + "id": "classroom.courses.courseWork.create", + "path": "v1/courses/{courseId}/courseWork", + "httpMethod": "POST", + "description": "Creates course work. The resulting course work (and corresponding student submissions) are associated with the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to make the request. Classroom API requests to modify course work and student submissions must be made with an OAuth client ID from the associated Developer Console project. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course, create course work in the requested course, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId" + ], + "request": { + "$ref": "CourseWork" + }, + "response": { + "$ref": "CourseWork" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "get": { + "id": "classroom.courses.courseWork.get", + "path": "v1/courses/{courseId}/courseWork/{id}", + "httpMethod": "GET", + "description": "Returns course work. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course or course work does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "id" + ], + "response": { + "$ref": "CourseWork" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.course-work.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" + ] + }, + "list": { + "id": "classroom.courses.courseWork.list", + "path": "v1/courses/{courseId}/courseWork", + "httpMethod": "GET", + "description": "Returns a list of course work that the requester is permitted to view. Course students may only view `PUBLISHED` course work. Course teachers and domain administrators may view all course work. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkStates": { + "type": "string", + "description": "Restriction on the work status to return. Only courseWork that matches is returned. If unspecified, items with a work status of `PUBLISHED` is returned.", + "enum": [ + "COURSE_WORK_STATE_UNSPECIFIED", + "PUBLISHED", + "DRAFT", + "DELETED" + ], + "repeated": true, + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Optional sort ordering for results. A comma-separated list of fields with an optional sort direction keyword. Supported fields are `updateTime` and `dueDate`. Supported direction keywords are `asc` and `desc`. If not specified, `updateTime desc` is the default behavior. Examples: `dueDate asc,updateTime desc`, `updateTime,dueDate desc`", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token.", + "location": "query" + } + }, + "parameterOrder": [ + "courseId" + ], + "response": { + "$ref": "ListCourseWorkResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.course-work.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" + ] + } + }, + "resources": { + "studentSubmissions": { + "methods": { + "get": { + "id": "classroom.courses.courseWork.studentSubmissions.get", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "httpMethod": "GET", + "description": "Returns a student submission. * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course, course work, or student submission or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "response": { + "$ref": "StudentSubmission" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.me.readonly", + "https://www.googleapis.com/auth/classroom.coursework.students", + "https://www.googleapis.com/auth/classroom.coursework.students.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" + ] + }, + "patch": { + "id": "classroom.courses.courseWork.studentSubmissions.patch", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}", + "httpMethod": "PATCH", + "description": "Updates one or more fields of a student submission. See google.classroom.v1.StudentSubmission for details of which fields may be updated and who may change them. This request must be made by the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to create the corresponding course work item. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting developer project did not create the corresponding course work, if the user is not permitted to make the requested modification to the student submission, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + }, + "updateMask": { + "type": "string", + "description": "Mask that identifies which fields on the student submission to update. This field is required to do an update. The update fails if invalid fields are specified. The following fields may be specified by teachers: * `draft_grade` * `assigned_grade`", + "location": "query" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "request": { + "$ref": "StudentSubmission" + }, + "response": { + "$ref": "StudentSubmission" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "list": { + "id": "classroom.courses.courseWork.studentSubmissions.list", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions", + "httpMethod": "GET", + "description": "Returns a list of student submissions that the requester is permitted to view, factoring in the OAuth scopes of the request. `-` may be specified as the `course_work_id` to include student submissions for multiple course work items. Course students may only view their own work. Course teachers and domain administrators may view all student submissions. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifer of the student work to request. This may be set to the string literal `\"-\"` to request student work for all course work in the specified course.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "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", + "location": "query" + }, + "states": { + "type": "string", + "description": "Requested submission states. If specified, returned student submissions match one of the specified submission states.", + "enum": [ + "SUBMISSION_STATE_UNSPECIFIED", + "NEW", + "CREATED", + "TURNED_IN", + "RETURNED", + "RECLAIMED_BY_STUDENT" + ], + "repeated": true, + "location": "query" + }, + "late": { + "type": "string", + "description": "Requested lateness value. If specified, returned student submissions are restricted by the requested value. If unspecified, submissions are returned regardless of `late` value.", + "enum": [ + "LATE_VALUES_UNSPECIFIED", + "LATE_ONLY", + "NOT_LATE_ONLY" + ], + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token.", + "location": "query" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId" + ], + "response": { + "$ref": "ListStudentSubmissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.me.readonly", + "https://www.googleapis.com/auth/classroom.coursework.students", + "https://www.googleapis.com/auth/classroom.coursework.students.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.me.readonly", + "https://www.googleapis.com/auth/classroom.student-submissions.students.readonly" + ] + }, + "turnIn": { + "id": "classroom.courses.courseWork.studentSubmissions.turnIn", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:turnIn", + "httpMethod": "POST", + "description": "Turns in a student submission. Turning in a student submission transfers ownership of attached Drive files to the teacher and may also update the submission state. This may only be called by the student that owns the specified student submission. This request must be made by the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to create the corresponding course work item. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, turn in the requested student submission, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "request": { + "$ref": "TurnInStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ] + }, + "reclaim": { + "id": "classroom.courses.courseWork.studentSubmissions.reclaim", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:reclaim", + "httpMethod": "POST", + "description": "Reclaims a student submission on behalf of the student that owns it. Reclaiming a student submission transfers ownership of attached Drive files to the student and update the submission state. Only the student that ownes the requested student submission may call this method, and only for a student submission that has been turned in. This request must be made by the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to create the corresponding course work item. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, unsubmit the requested student submission, or for access errors. * `FAILED_PRECONDITION` if the student submission has not been turned in. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "request": { + "$ref": "ReclaimStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me" + ] + }, + "return": { + "id": "classroom.courses.courseWork.studentSubmissions.return", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:return", + "httpMethod": "POST", + "description": "Returns a student submission. Returning a student submission transfers ownership of attached Drive files to the student and may also update the submission state. Unlike the Classroom application, returning a student submission does not set assignedGrade to the draftGrade value. Only a teacher of the course that contains the requested student submission may call this method. This request must be made by the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to create the corresponding course work item. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, return the requested student submission, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "request": { + "$ref": "ReturnStudentSubmissionRequest" + }, + "response": { + "$ref": "Empty" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + }, + "modifyAttachments": { + "id": "classroom.courses.courseWork.studentSubmissions.modifyAttachments", + "path": "v1/courses/{courseId}/courseWork/{courseWorkId}/studentSubmissions/{id}:modifyAttachments", + "httpMethod": "POST", + "description": "Modifies attachments of student submission. Attachments may only be added to student submissions whose type is `ASSIGNMENT`. This request must be made by the Developer Console project of the [OAuth client ID](https://support.google.com/cloud/answer/6158849) used to create the corresponding course work item. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access the requested course or course work, if the user is not permitted to modify attachments on the requested student submission, or for access errors. * `INVALID_ARGUMENT` if the request is malformed. * `NOT_FOUND` if the requested course, course work, or student submission does not exist.", + "parameters": { + "courseId": { + "type": "string", + "description": "Identifier of the course. This identifier can be either the Classroom-assigned identifier or an alias.", + "required": true, + "location": "path" + }, + "courseWorkId": { + "type": "string", + "description": "Identifier of the course work.", + "required": true, + "location": "path" + }, + "id": { + "type": "string", + "description": "Identifier of the student submission.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "courseId", + "courseWorkId", + "id" + ], + "request": { + "$ref": "ModifyAttachmentsRequest" + }, + "response": { + "$ref": "StudentSubmission" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.coursework.me", + "https://www.googleapis.com/auth/classroom.coursework.students" + ] + } + } + } + } + } + } + }, + "userProfiles": { + "methods": { + "get": { + "id": "classroom.userProfiles.get", + "path": "v1/userProfiles/{userId}", + "httpMethod": "GET", + "description": "Returns a user profile. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access this user profile or if no profile exists with the requested ID or for access errors.", + "parameters": { + "userId": { + "type": "string", + "description": "Identifier of the profile to return. 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", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "UserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/classroom.profile.emails", + "https://www.googleapis.com/auth/classroom.profile.photos", + "https://www.googleapis.com/auth/classroom.rosters", + "https://www.googleapis.com/auth/classroom.rosters.readonly" + ] + } + }, + "resources": { + "guardianInvitations": { + "methods": { + "list": { + "id": "classroom.userProfiles.guardianInvitations.list", + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "httpMethod": "GET", + "description": "Returns a list of guardian invitations that the requesting user is permitted to view, filtered by the parameters provided. This method returns the following error codes: * `PERMISSION_DENIED` if a `student_id` is specified, and the requesting user is not permitted to view guardian invitations for that student, if guardians are not enabled for the domain in question, or for other access errors. * `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot be recognized (it is not an email address, nor a `student_id` from the API, nor the literal string `me`). May also be returned if an invalid `page_token` or `state` is provided. * `NOT_FOUND` if a `student_id` is specified, and its format can be recognized, but Classroom has no record of that student.", + "parameters": { + "studentId": { + "type": "string", + "description": "The ID of the student whose guardian invitations are to be returned. 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", + "required": true, + "location": "path" + }, + "invitedEmailAddress": { + "type": "string", + "description": "If specified, only results with the specified `invited_email_address` will be returned.", + "location": "query" + }, + "states": { + "type": "string", + "description": "If specified, only results with the specified `state` values will be returned. Otherwise, results with a `state` of `PENDING` will be returned.", + "enum": [ + "GUARDIAN_INVITATION_STATE_UNSPECIFIED", + "PENDING", + "COMPLETE" + ], + "repeated": true, + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results.", + "format": "int32", + "location": "query" + } + }, + "parameterOrder": [ + "studentId" + ], + "response": { + "$ref": "ListGuardianInvitationsResponse" + } + }, + "get": { + "id": "classroom.userProfiles.guardianInvitations.get", + "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "httpMethod": "GET", + "description": "Returns a specific guardian invitation. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to view guardian invitations for the student identified by the `student_id`, if guardians are not enabled for the domain in question, or for other access errors. * `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot be recognized (it is not an email address, nor a `student_id` from the API, nor the literal string `me`). * `NOT_FOUND` if Classroom cannot find any record of the given student or `invitation_id`. May also be returned if the student exists, but the requesting user does not have access to see that student.", + "parameters": { + "studentId": { + "type": "string", + "description": "The ID of the student whose guardian invitation is being requested.", + "required": true, + "location": "path" + }, + "invitationId": { + "type": "string", + "description": "The `id` field of the `GuardianInvitation` being requested.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "studentId", + "invitationId" + ], + "response": { + "$ref": "GuardianInvitation" + } + }, + "create": { + "id": "classroom.userProfiles.guardianInvitations.create", + "path": "v1/userProfiles/{studentId}/guardianInvitations", + "httpMethod": "POST", + "description": "Creates a guardian invitation, and sends an email to the guardian asking them to confirm that they are the student's guardian. Once the guardian accepts the invitation, their `state` will change to `COMPLETED` and they will start receiving guardian notifications. A `Guardian` resource will also be created to represent the active guardian. The request object must have the `student_id` and `invited_email_address` fields set. Failing to set these fields, or setting any other fields in the request, will result in an error. This method returns the following error codes: * `PERMISSION_DENIED` if the current user does not have permission to manage guardians, if the guardian in question has already rejected too many requests for that student, if guardians are not enabled for the domain in question, or for other access errors. * `RESOURCE_EXHAUSTED` if the student or guardian has exceeded the guardian link limit. * `INVALID_ARGUMENT` if the guardian email address is not valid (for example, if it is too long), or if the format of the student ID provided cannot be recognized (it is not an email address, nor a `user_id` from this API). This error will also be returned if read-only fields are set, or if the `state` field is set to to a value other than `PENDING`. * `NOT_FOUND` if the student ID provided is a valid student ID, but Classroom has no record of that student. * `ALREADY_EXISTS` if there is already a pending guardian invitation for the student and `invited_email_address` provided, or if the provided `invited_email_address` matches the Google account of an existing `Guardian` for this user.", + "parameters": { + "studentId": { + "type": "string", + "description": "ID of the student (in standard format)", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "studentId" + ], + "request": { + "$ref": "GuardianInvitation" + }, + "response": { + "$ref": "GuardianInvitation" + } + }, + "patch": { + "id": "classroom.userProfiles.guardianInvitations.patch", + "path": "v1/userProfiles/{studentId}/guardianInvitations/{invitationId}", + "httpMethod": "PATCH", + "description": "Modifies a guardian invitation. Currently, the only valid modification is to change the `state` from `PENDING` to `COMPLETE`. This has the effect of withdrawing the invitation. This method returns the following error codes: * `PERMISSION_DENIED` if the current user does not have permission to manage guardians, if guardians are not enabled for the domain in question or for other access errors. * `FAILED_PRECONDITION` if the guardian link is not in the `PENDING` state. * `INVALID_ARGUMENT` if the format of the student ID provided cannot be recognized (it is not an email address, nor a `user_id` from this API), or if the passed `GuardianInvitation` has a `state` other than `COMPLETE`, or if it modifies fields other than `state`. * `NOT_FOUND` if the student ID provided is a valid student ID, but Classroom has no record of that student, or if the `id` field does not refer to a guardian invitation known to Classroom.", + "parameters": { + "studentId": { + "type": "string", + "description": "The ID of the student whose guardian invitation is to be modified.", + "required": true, + "location": "path" + }, + "invitationId": { + "type": "string", + "description": "The `id` field of the `GuardianInvitation` to be modified.", + "required": true, + "location": "path" + }, + "updateMask": { + "type": "string", + "description": "Mask that identifies which fields on the course to update. This field is required to do an update. The update will fail if invalid fields are specified. The following fields are valid: * `state` When set in a query parameter, this field should be specified as `updateMask=,,...`", + "location": "query" + } + }, + "parameterOrder": [ + "studentId", + "invitationId" + ], + "request": { + "$ref": "GuardianInvitation" + }, + "response": { + "$ref": "GuardianInvitation" + } + } + } + }, + "guardians": { + "methods": { + "list": { + "id": "classroom.userProfiles.guardians.list", + "path": "v1/userProfiles/{studentId}/guardians", + "httpMethod": "GET", + "description": "Returns a list of guardians that the requesting user is permitted to view, restricted to those that match the request. This method returns the following error codes: * `PERMISSION_DENIED` if a `student_id` is specified, and the requesting user is not permitted to view guardian information for that student, if guardians are not enabled for the domain in question, if the `invited_email_address` filter is set by a user who is not a domain administrator, or for other access errors. * `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot be recognized (it is not an email address, nor a `student_id` from the API, nor the literal string `me`). May also be returned if an invalid `page_token` is provided. * `NOT_FOUND` if a `student_id` is specified, and its format can be recognized, but Classroom has no record of that student.", + "parameters": { + "studentId": { + "type": "string", + "description": "Filter results by the student who the guardian is linked to. 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", + "required": true, + "location": "path" + }, + "invitedEmailAddress": { + "type": "string", + "description": "Filter results by the email address that the original invitation was sent to, resulting in this guardian link. This filter can only be used by domain administrators.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "nextPageToken value returned from a previous list call, indicating that the subsequent page of results should be returned. The list request must be otherwise identical to the one that resulted in this token.", + "location": "query" + }, + "pageSize": { + "type": "integer", + "description": "Maximum number of items to return. Zero or unspecified indicates that the server may assign a maximum. The server may return fewer than the specified number of results.", + "format": "int32", + "location": "query" + } + }, + "parameterOrder": [ + "studentId" + ], + "response": { + "$ref": "ListGuardiansResponse" + } + }, + "get": { + "id": "classroom.userProfiles.guardians.get", + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "httpMethod": "GET", + "description": "Returns a specific guardian. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to view guardian information for the student identified by the `student_id`, if guardians are not enabled for the domain in question, or for other access errors. * `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot be recognized (it is not an email address, nor a `student_id` from the API, nor the literal string `me`). * `NOT_FOUND` if Classroom cannot find any record of the given student or `guardian_id`, or if the guardian has been disabled.", + "parameters": { + "studentId": { + "type": "string", + "description": "The student whose guardian is being requested. One of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user", + "required": true, + "location": "path" + }, + "guardianId": { + "type": "string", + "description": "The `id` field from a `Guardian`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "studentId", + "guardianId" + ], + "response": { + "$ref": "Guardian" + } + }, + "delete": { + "id": "classroom.userProfiles.guardians.delete", + "path": "v1/userProfiles/{studentId}/guardians/{guardianId}", + "httpMethod": "DELETE", + "description": "Deletes a guardian. The guardian will no longer receive guardian notifications and the guardian will no longer be accessible via the API. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to manage guardians for the student identified by the `student_id`, if guardians are not enabled for the domain in question, or for other access errors. * `INVALID_ARGUMENT` if a `student_id` is specified, but its format cannot be recognized (it is not an email address, nor a `student_id` from the API). * `NOT_FOUND` if Classroom cannot find any record of the given `student_id` or `guardian_id`, or if the guardian has already been disabled.", + "parameters": { + "studentId": { + "type": "string", + "description": "The student whose guardian is to be deleted. One of the following: * the numeric identifier for the user * the email address of the user * the string literal `\"me\"`, indicating the requesting user", + "required": true, + "location": "path" + }, + "guardianId": { + "type": "string", + "description": "The `id` field from a `Guardian`.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "studentId", + "guardianId" + ], + "response": { + "$ref": "Empty" + } + } + } } } }, @@ -1074,36 +2493,6 @@ ] } } - }, - "userProfiles": { - "methods": { - "get": { - "id": "classroom.userProfiles.get", - "path": "v1/userProfiles/{userId}", - "httpMethod": "GET", - "description": "Returns a user profile. This method returns the following error codes: * `PERMISSION_DENIED` if the requesting user is not permitted to access this user profile or if no profile exists with the requested ID or for access errors.", - "parameters": { - "userId": { - "type": "string", - "description": "Identifier of the profile to return. 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", - "required": true, - "location": "path" - } - }, - "parameterOrder": [ - "userId" - ], - "response": { - "$ref": "UserProfile" - }, - "scopes": [ - "https://www.googleapis.com/auth/classroom.profile.emails", - "https://www.googleapis.com/auth/classroom.profile.photos", - "https://www.googleapis.com/auth/classroom.rosters", - "https://www.googleapis.com/auth/classroom.rosters.readonly" - ] - } - } } } } diff --git a/etc/api/cloudbilling/v1/cloudbilling-api.json b/etc/api/cloudbilling/v1/cloudbilling-api.json index 6559ad378c..7debc30c1f 100644 --- a/etc/api/cloudbilling/v1/cloudbilling-api.json +++ b/etc/api/cloudbilling/v1/cloudbilling-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/M2VzqGfwqR0FviWkPggfCzE5zZU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/M2VzqGfwqR0FviWkPggfCzE5zZU\"", "discoveryVersion": "v1", "id": "cloudbilling:v1", "name": "cloudbilling", diff --git a/etc/api/clouddebugger/v2/clouddebugger-api.json b/etc/api/clouddebugger/v2/clouddebugger-api.json index ba1bf5fbdb..ea66c2f2e5 100644 --- a/etc/api/clouddebugger/v2/clouddebugger-api.json +++ b/etc/api/clouddebugger/v2/clouddebugger-api.json @@ -1,12 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/DyOQnJEJbXYKE7HJJaEpvyi2Ka0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/QjifI48X3fgI9mRgli3ziT84a8U\"", "discoveryVersion": "v1", "id": "clouddebugger:v2", "name": "clouddebugger", + "canonicalName": "Cloud Debugger", "version": "v2", - "revision": "20160309", - "title": "Google Cloud Debugger API", + "revision": "20160810", + "title": "Stackdriver Debugger API", "description": "Examines the call stack and variables of a running application without stopping or slowing it down.", "ownerDomain": "google.com", "ownerName": "Google", @@ -14,7 +15,7 @@ "x16": "http://www.google.com/images/icons/product/search-16.gif", "x32": "http://www.google.com/images/icons/product/search-32.gif" }, - "documentationLink": "https://cloud.google.com/tools/cloud-debugger", + "documentationLink": "http://cloud.google.com/debugger", "protocol": "rest", "baseUrl": "https://clouddebugger.googleapis.com/", "basePath": "", @@ -109,9 +110,6 @@ }, "https://www.googleapis.com/auth/cloud_debugger": { "description": "Manage cloud debugger" - }, - "https://www.googleapis.com/auth/cloud_debugletcontroller": { - "description": "Manage active breakpoints in cloud debugger" } } } @@ -722,7 +720,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugletcontroller" + "https://www.googleapis.com/auth/cloud_debugger" ] } }, @@ -760,7 +758,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugletcontroller" + "https://www.googleapis.com/auth/cloud_debugger" ] }, "update": { @@ -794,7 +792,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/cloud_debugletcontroller" + "https://www.googleapis.com/auth/cloud_debugger" ] } } diff --git a/etc/api/cloudmonitoring/v2beta2/cloudmonitoring-api.json b/etc/api/cloudmonitoring/v2beta2/cloudmonitoring-api.json index 799753526e..eda83c77b4 100644 --- a/etc/api/cloudmonitoring/v2beta2/cloudmonitoring-api.json +++ b/etc/api/cloudmonitoring/v2beta2/cloudmonitoring-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/EqkjD9YlL49SjfTia8GERMML3DM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/8gt81fb3PlHUWsNgH1AXPodtr_c\"", "discoveryVersion": "v1", "id": "cloudmonitoring:v2beta2", "name": "cloudmonitoring", "canonicalName": "Cloud Monitoring", "version": "v2beta2", - "revision": "20160403", + "revision": "20160718", "title": "Cloud Monitoring API", "description": "Accesses Google Cloud Monitoring data.", "ownerDomain": "google.com", diff --git a/etc/api/cloudresourcemanager/v1/cloudresourcemanager-api.json b/etc/api/cloudresourcemanager/v1/cloudresourcemanager-api.json index 7752d17c2b..ce4b92afc4 100644 --- a/etc/api/cloudresourcemanager/v1/cloudresourcemanager-api.json +++ b/etc/api/cloudresourcemanager/v1/cloudresourcemanager-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/808IeaiUvRpH2AAOyroDUDw0WoY\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/KvNq14l55QtltcB7NZiPRgJYtsY\"", "discoveryVersion": "v1", "id": "cloudresourcemanager:v1", "name": "cloudresourcemanager", "canonicalName": "Cloud Resource Manager", "version": "v1", - "revision": "20160316", + "revision": "20160617", "title": "Google Cloud Resource Manager API", "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "ownerDomain": "google.com", @@ -140,7 +140,7 @@ }, "name": { "type": "string", - "description": "The user-assigned name of the Project. It must be 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: My Project Read-write." + "description": "The user-assigned display name of the Project. It must be 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: My Project Read-write." }, "createTime": { "type": "string", @@ -287,6 +287,68 @@ } } } + }, + "Operation": { + "id": "Operation", + "type": "object", + "description": "This resource represents a long-running operation that is the result of a network API call.", + "properties": { + "name": { + "type": "string", + "description": "The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should have the format of `operations/some/unique/name`." + }, + "metadata": { + "type": "object", + "description": "Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @ype with type URL." + } + }, + "done": { + "type": "boolean", + "description": "If the value is `false`, it means the operation is still in progress. If true, the operation is completed, and either `error` or `response` is available." + }, + "error": { + "$ref": "Status", + "description": "The error result of the operation in case of failure." + }, + "response": { + "type": "object", + "description": "The normal response of the operation in case of success. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @ype with type URL." + } + } + } + }, + "Status": { + "id": "Status", + "type": "object", + "description": "The `Status` type defines a logical error model that is suitable for different programming environments, including REST APIs and RPC APIs. It is used by [gRPC](https://github.com/grpc). The error model is designed to be: - 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` which 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 purpose. - 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.", + "properties": { + "code": { + "type": "integer", + "description": "The status code, which should be an enum value of google.rpc.Code.", + "format": "int32" + }, + "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": { + "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.", + "items": { + "type": "object", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @ype with type URL." + } + } + } + } } }, "resources": { @@ -377,7 +439,7 @@ "id": "cloudresourcemanager.projects.delete", "path": "v1/projects/{projectId}", "httpMethod": "DELETE", - "description": "Marks the Project identified by the specified `project_id` (for example, `my-project-123`) for deletion. This method will only affect the Project if the following criteria are met: + The Project does not have a billing account associated with it. + The Project has a lifecycle state of ACTIVE. This method changes the Project's lifecycle state from ACTIVE to DELETE_REQUESTED. The deletion starts at an unspecified time, at which point the lifecycle state changes to DELETE_IN_PROGRESS. Until the deletion completes, you can check the lifecycle state checked by retrieving the Project with GetProject, and the Project remains visible to ListProjects. However, you cannot update the project. After the deletion completes, the Project is not retrievable by the GetProject and ListProjects methods. The caller must have modify permissions for this Project.", + "description": "Marks the Project identified by the specified `project_id` (for example, `my-project-123`) for deletion. This method will only affect the Project if the following criteria are met: + The Project does not have a billing account associated with it. + The Project has a lifecycle state of ACTIVE. This method changes the Project's lifecycle state from ACTIVE to DELETE_REQUESTED. The deletion starts at an unspecified time, at which point the Project is no longer accessible. Until the deletion completes, you can check the lifecycle state checked by retrieving the Project with GetProject, and the Project remains visible to ListProjects. However, you cannot update the project. After the deletion completes, the Project is not retrievable by the GetProject and ListProjects methods. The caller must have modify permissions for this Project.", "parameters": { "projectId": { "type": "string", @@ -400,7 +462,7 @@ "id": "cloudresourcemanager.projects.undelete", "path": "v1/projects/{projectId}:undelete", "httpMethod": "POST", - "description": "Restores the Project identified by the specified `project_id` (for example, `my-project-123`). You can only use this method for a Project that has a lifecycle state of DELETE_REQUESTED. After deletion starts, as indicated by a lifecycle state of DELETE_IN_PROGRESS, the Project cannot be restored. The caller must have modify permissions for this Project.", + "description": "Restores the Project identified by the specified `project_id` (for example, `my-project-123`). You can only use this method for a Project that has a lifecycle state of DELETE_REQUESTED. After deletion starts, the Project cannot be restored. The caller must have modify permissions for this Project.", "parameters": { "projectId": { "type": "string", @@ -453,7 +515,7 @@ "id": "cloudresourcemanager.projects.setIamPolicy", "path": "v1/projects/{resource}:setIamPolicy", "httpMethod": "POST", - "description": "Sets the IAM access control policy for the specified Project. Replaces any existing policy. The following constraints apply when using `setIamPolicy()`: + Project currently supports only `user:{emailid}` and `serviceAccount:{emailid}` members in a `Binding` of a `Policy`. + To be added as an `owner`, a user must be invited via Cloud Platform console and must accept the invitation. + Members cannot be added to more than one role in the same policy. + There must be at least one owner who has accepted the Terms of Service (ToS) agreement in the policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the policy will fail. + Calling this method requires enabling the App Engine Admin API. Note: Removing service accounts from policies or changing their roles can render services completely inoperable. It is important to understand how the service account is being used before removing or updating its roles.", + "description": "Sets the IAM access control policy for the specified Project. Replaces any existing policy. The following constraints apply when using `setIamPolicy()`: + Project does not support `allUsers` and `allAuthenticatedUsers` as `members` in a `Binding` of a `Policy`. + The owner role can be granted only to `user` and `serviceAccount`. + Service accounts can be made owners of a project directly without any restrictions. However, to be added as an owner, a user must be invited via Cloud Platform console and must accept the invitation. + A user cannot be granted the owner role using `setIamPolicy()`. The user must be granted the owner role using the Cloud Platform Console and must explicitly accept the invitation. + Invitations to grant the owner role cannot be sent using `setIamPolicy()`; they must be sent only using the Cloud Platform Console. + Membership changes that leave the project without any owners that have accepted the Terms of Service (ToS) will be rejected. + Members cannot be added to more than one role in the same policy. + There must be at least one owner who has accepted the Terms of Service (ToS) agreement in the policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the policy will fail. This restriction also applies to legacy projects that no longer have owners who have accepted the ToS. Edits to IAM policies will be rejected until the lack of a ToS-accepting owner is rectified. + Calling this method requires enabling the App Engine Admin API. Note: Removing service accounts from policies or changing their roles can render services completely inoperable. It is important to understand how the service account is being used before removing or updating its roles.", "parameters": { "resource": { "type": "string", @@ -503,6 +565,35 @@ ] } } + }, + "operations": { + "methods": { + "get": { + "id": "cloudresourcemanager.operations.get", + "path": "v1/{+name}", + "httpMethod": "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.", + "parameters": { + "name": { + "type": "string", + "description": "The name of the operation resource.", + "required": true, + "pattern": "^operations/.*$", + "location": "path" + } + }, + "parameterOrder": [ + "name" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + } + } } } } diff --git a/etc/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json b/etc/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json index dc553f48da..09ea7ccdcb 100644 --- a/etc/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json +++ b/etc/api/cloudresourcemanager/v1beta1/cloudresourcemanager-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7EbyY-VAY04PT8kJyTAvwd_kJKM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/232vNH0y0gf7PFZjf9ayIsMOF0M\"", "discoveryVersion": "v1", "id": "cloudresourcemanager:v1beta1", "name": "cloudresourcemanager", "canonicalName": "Cloud Resource Manager", "version": "v1beta1", - "revision": "20160316", + "revision": "20160617", "title": "Google Cloud Resource Manager API", "description": "The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.", "ownerDomain": "google.com", @@ -140,7 +140,7 @@ }, "name": { "type": "string", - "description": "The user-assigned name of the Project. It must be 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: My Project Read-write." + "description": "The user-assigned display name of the Project. It must be 4 to 30 characters. Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point. Example: My Project Read-write." }, "createTime": { "type": "string", @@ -166,7 +166,7 @@ "properties": { "type": { "type": "string", - "description": "Required field representing the resource type this id is for. At present, the only valid type is \"organization\"." + "description": "Required field representing the resource type this id is for. At present, the valid types are \"project\" and \"organization\"." }, "id": { "type": "string", @@ -202,6 +202,36 @@ "type": "object", "description": "The request sent to the UndeleteProject method." }, + "GetAncestryRequest": { + "id": "GetAncestryRequest", + "type": "object", + "description": "The request sent to the GetAncestry method." + }, + "GetAncestryResponse": { + "id": "GetAncestryResponse", + "type": "object", + "description": "Response from the GetAncestry method.", + "properties": { + "ancestor": { + "type": "array", + "description": "Ancestors are ordered from bottom to top of the resource hierarchy. The first ancestor is the project itself, followed by the project's parent, etc.", + "items": { + "$ref": "Ancestor" + } + } + } + }, + "Ancestor": { + "id": "Ancestor", + "type": "object", + "description": "Identifying information for a single ancestor of a project.", + "properties": { + "resourceId": { + "$ref": "ResourceId", + "description": "Resource id of the ancestor." + } + } + }, "GetIamPolicyRequest": { "id": "GetIamPolicyRequest", "type": "object", @@ -311,9 +341,13 @@ "type": "object", "description": "The root node in the resource hierarchy to which a particular entity's (e.g., company) resources belong.", "properties": { + "name": { + "type": "string", + "description": "Output Only. The resource name of the organization. This is the organization's relative path in the API. Its format is \"organizations/[organization_id]\". For example, \"organizations/1234\"." + }, "organizationId": { "type": "string", - "description": "An immutable id for the Organization that is assigned on creation. This should be omitted when creating a new Organization. This field is read-only." + "description": "An immutable id for the Organization that is assigned on creation. This should be omitted when creating a new Organization. This field is read-only. This field is deprecated and will be removed in v1. Use name instead." }, "displayName": { "type": "string", @@ -326,6 +360,15 @@ "creationTime": { "type": "string", "description": "Timestamp when the Organization was created. Assigned by the server. @OutputOnly" + }, + "lifecycleState": { + "type": "string", + "description": "The organization's current lifecycle state. Assigned by the server. @OutputOnly", + "enum": [ + "LIFECYCLE_STATE_UNSPECIFIED", + "ACTIVE", + "DELETE_REQUESTED" + ] } } }, @@ -444,7 +487,7 @@ "id": "cloudresourcemanager.projects.delete", "path": "v1beta1/projects/{projectId}", "httpMethod": "DELETE", - "description": "Marks the Project identified by the specified `project_id` (for example, `my-project-123`) for deletion. This method will only affect the Project if the following criteria are met: + The Project does not have a billing account associated with it. + The Project has a lifecycle state of ACTIVE. This method changes the Project's lifecycle state from ACTIVE to DELETE_REQUESTED. The deletion starts at an unspecified time, at which point the lifecycle state changes to DELETE_IN_PROGRESS. Until the deletion completes, you can check the lifecycle state checked by retrieving the Project with GetProject, and the Project remains visible to ListProjects. However, you cannot update the project. After the deletion completes, the Project is not retrievable by the GetProject and ListProjects methods. The caller must have modify permissions for this Project.", + "description": "Marks the Project identified by the specified `project_id` (for example, `my-project-123`) for deletion. This method will only affect the Project if the following criteria are met: + The Project does not have a billing account associated with it. + The Project has a lifecycle state of ACTIVE. This method changes the Project's lifecycle state from ACTIVE to DELETE_REQUESTED. The deletion starts at an unspecified time, at which point the project is no longer accessible. Until the deletion completes, you can check the lifecycle state checked by retrieving the Project with GetProject, and the Project remains visible to ListProjects. However, you cannot update the project. After the deletion completes, the Project is not retrievable by the GetProject and ListProjects methods. The caller must have modify permissions for this Project.", "parameters": { "projectId": { "type": "string", @@ -467,7 +510,7 @@ "id": "cloudresourcemanager.projects.undelete", "path": "v1beta1/projects/{projectId}:undelete", "httpMethod": "POST", - "description": "Restores the Project identified by the specified `project_id` (for example, `my-project-123`). You can only use this method for a Project that has a lifecycle state of DELETE_REQUESTED. After deletion starts, as indicated by a lifecycle state of DELETE_IN_PROGRESS, the Project cannot be restored. The caller must have modify permissions for this Project.", + "description": "Restores the Project identified by the specified `project_id` (for example, `my-project-123`). You can only use this method for a Project that has a lifecycle state of DELETE_REQUESTED. After deletion starts, the Project cannot be restored. The caller must have modify permissions for this Project.", "parameters": { "projectId": { "type": "string", @@ -489,6 +532,33 @@ "https://www.googleapis.com/auth/cloud-platform" ] }, + "getAncestry": { + "id": "cloudresourcemanager.projects.getAncestry", + "path": "v1beta1/projects/{projectId}:getAncestry", + "httpMethod": "POST", + "description": "Gets a list of ancestors in the resource hierarchy for the Project identified by the specified `project_id` (for example, `my-project-123`). The caller must have read permissions for this Project.", + "parameters": { + "projectId": { + "type": "string", + "description": "The Project ID (for example, `my-project-123`). Required.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId" + ], + "request": { + "$ref": "GetAncestryRequest" + }, + "response": { + "$ref": "GetAncestryResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only" + ] + }, "getIamPolicy": { "id": "cloudresourcemanager.projects.getIamPolicy", "path": "v1beta1/projects/{resource}:getIamPolicy", @@ -520,7 +590,7 @@ "id": "cloudresourcemanager.projects.setIamPolicy", "path": "v1beta1/projects/{resource}:setIamPolicy", "httpMethod": "POST", - "description": "Sets the IAM access control policy for the specified Project. Replaces any existing policy. The following constraints apply when using `setIamPolicy()`: + Project currently supports only `user:{emailid}` and `serviceAccount:{emailid}` members in a `Binding` of a `Policy`. + To be added as an `owner`, a user must be invited via Cloud Platform console and must accept the invitation. + Members cannot be added to more than one role in the same policy. + There must be at least one owner who has accepted the Terms of Service (ToS) agreement in the policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the policy will fail. + Calling this method requires enabling the App Engine Admin API. Note: Removing service accounts from policies or changing their roles can render services completely inoperable. It is important to understand how the service account is being used before removing or updating its roles.", + "description": "Sets the IAM access control policy for the specified Project. Replaces any existing policy. The following constraints apply when using `setIamPolicy()`: + Project does not support `allUsers` and `allAuthenticatedUsers` as `members` in a `Binding` of a `Policy`. + The owner role can be granted only to `user` and `serviceAccount`. + Service accounts can be made owners of a project directly without any restrictions. However, to be added as an owner, a user must be invited via Cloud Platform console and must accept the invitation. + A user cannot be granted the owner role using `setIamPolicy()`. The user must be granted the owner role using the Cloud Platform Console and must explicitly accept the invitation. + Invitations to grant the owner role cannot be sent using `setIamPolicy()`; they must be sent only using the Cloud Platform Console. + Membership changes that leave the project without any owners that have accepted the Terms of Service (ToS) will be rejected. + Members cannot be added to more than one role in the same policy. + There must be at least one owner who has accepted the Terms of Service (ToS) agreement in the policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the policy will fail. This restriction also applies to legacy projects that no longer have owners who have accepted the ToS. Edits to IAM policies will be rejected until the lack of a ToS-accepting owner is rectified. + Calling this method requires enabling the App Engine Admin API. Note: Removing service accounts from policies or changing their roles can render services completely inoperable. It is important to understand how the service account is being used before removing or updating its roles.", "parameters": { "resource": { "type": "string", @@ -606,19 +676,25 @@ }, "get": { "id": "cloudresourcemanager.organizations.get", - "path": "v1beta1/organizations/{organizationId}", + "path": "v1beta1/{+name}", "httpMethod": "GET", - "description": "Fetches an Organization resource identified by the specified `organization_id`.", + "description": "Fetches an Organization resource identified by the specified resource name.", "parameters": { + "name": { + "type": "string", + "description": "The resource name of the Organization to fetch. Its format is \"organizations/[organization_id]\". For example, \"organizations/1234\".", + "required": true, + "pattern": "^organizations/[^/]*$", + "location": "path" + }, "organizationId": { "type": "string", - "description": "The id of the Organization resource to fetch.", - "required": true, - "location": "path" + "description": "The id of the Organization resource to fetch. This field is deprecated and will be removed in v1. Use name instead.", + "location": "query" } }, "parameterOrder": [ - "organizationId" + "name" ], "response": { "$ref": "Organization" @@ -630,19 +706,20 @@ }, "update": { "id": "cloudresourcemanager.organizations.update", - "path": "v1beta1/organizations/{organizationId}", + "path": "v1beta1/{+name}", "httpMethod": "PUT", - "description": "Updates an Organization resource identified by the specified `organization_id`.", + "description": "Updates an Organization resource identified by the specified resource name.", "parameters": { - "organizationId": { + "name": { "type": "string", - "description": "An immutable id for the Organization that is assigned on creation. This should be omitted when creating a new Organization. This field is read-only.", + "description": "Output Only. The resource name of the organization. This is the organization's relative path in the API. Its format is \"organizations/[organization_id]\". For example, \"organizations/1234\".", "required": true, + "pattern": "^organizations/[^/]*$", "location": "path" } }, "parameterOrder": [ - "organizationId" + "name" ], "request": { "$ref": "Organization" @@ -656,14 +733,15 @@ }, "setIamPolicy": { "id": "cloudresourcemanager.organizations.setIamPolicy", - "path": "v1beta1/organizations/{resource}:setIamPolicy", + "path": "v1beta1/{+resource}:setIamPolicy", "httpMethod": "POST", - "description": "Sets the access control policy on an Organization resource. Replaces any existing policy.", + "description": "Sets the access control policy on an Organization resource. Replaces any existing policy. The `resource` field should be the organization's resource name, e.g. \"organizations/123\". For backward compatibility, the resource provided may also be the organization_id. This will not be supported in v1.", "parameters": { "resource": { "type": "string", "description": "REQUIRED: The resource for which the policy is being specified. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `setIamPolicy` documentation.", "required": true, + "pattern": "^organizations/[^/]*$", "location": "path" } }, @@ -682,14 +760,15 @@ }, "getIamPolicy": { "id": "cloudresourcemanager.organizations.getIamPolicy", - "path": "v1beta1/organizations/{resource}:getIamPolicy", + "path": "v1beta1/{+resource}:getIamPolicy", "httpMethod": "POST", - "description": "Gets the access control policy for an Organization resource. May be empty if no such policy or resource exists.", + "description": "Gets the access control policy for an Organization resource. May be empty if no such policy or resource exists. The `resource` field should be the organization's resource name, e.g. \"organizations/123\". For backward compatibility, the resource provided may also be the organization_id. This will not be supported in v1.", "parameters": { "resource": { "type": "string", "description": "REQUIRED: The resource for which the policy is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `getIamPolicy` documentation.", "required": true, + "pattern": "^organizations/[^/]*$", "location": "path" } }, @@ -709,14 +788,15 @@ }, "testIamPermissions": { "id": "cloudresourcemanager.organizations.testIamPermissions", - "path": "v1beta1/organizations/{resource}:testIamPermissions", + "path": "v1beta1/{+resource}:testIamPermissions", "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified Organization.", + "description": "Returns permissions that a caller has on the specified Organization. The `resource` field should be the organization's resource name, e.g. \"organizations/123\". For backward compatibility, the resource provided may also be the organization_id. This will not be supported in v1.", "parameters": { "resource": { "type": "string", "description": "REQUIRED: The resource for which the policy detail is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `testIamPermissions` documentation.", "required": true, + "pattern": "^organizations/[^/]*$", "location": "path" } }, diff --git a/etc/api/cloudtrace/v1/cloudtrace-api.json b/etc/api/cloudtrace/v1/cloudtrace-api.json index 56114eadf5..fd8cc0f1a8 100644 --- a/etc/api/cloudtrace/v1/cloudtrace-api.json +++ b/etc/api/cloudtrace/v1/cloudtrace-api.json @@ -1,13 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/hv7wO9t243cZnlaNc4LDNLDlWOU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/avS4leRd3oaImhwLi14P2pt74p0\"", "discoveryVersion": "v1", "id": "cloudtrace:v1", "name": "cloudtrace", + "canonicalName": "Cloud Trace", "version": "v1", - "revision": "20151207", + "revision": "20160518", "title": "Google Cloud Trace API", - "description": "The Cloud Trace API allows you to send traces to and retrieve traces from Google Cloud Trace.", + "description": "Send and retrieve trace data from Google Cloud Trace. Data is generated and available by default for all App Engine applications. Data from other applications can be written to Cloud Trace for display, reporting, and analysis.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -106,6 +107,12 @@ "scopes": { "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/trace.append": { + "description": "Write Trace data for a project or application" + }, + "https://www.googleapis.com/auth/trace.readonly": { + "description": "Read Trace data for a project or application" } } } @@ -172,7 +179,7 @@ }, "name": { "type": "string", - "description": "Name of the trace. The trace name is sanitized and displayed in the Cloud Trace tool in the Google Developers Console. The name may be a method name or some other per-call site name. For the same executable and the same call point, a best practice is to use a consistent name, which makes it easier to correlate cross-trace spans." + "description": "Name of the trace. The trace name is sanitized and displayed in the Stackdriver Trace tool in the {% dynamic print site_values.console_name %}. The name may be a method name or some other per-call site name. For the same executable and the same call point, a best practice is to use a consistent name, which makes it easier to correlate cross-trace spans." }, "startTime": { "type": "string", @@ -223,7 +230,7 @@ "id": "cloudtrace.projects.patchTraces", "path": "v1/projects/{projectId}/traces", "httpMethod": "PATCH", - "description": "Sends new traces to Cloud Trace or updates existing traces. If the ID of a trace that you send matches that of an existing trace, any fields in the existing trace and its spans are overwritten by the provided values, and any new fields provided are merged with the existing trace data. If the ID does not match, a new trace is created.", + "description": "Sends new traces to Stackdriver Trace or updates existing traces. If the ID of a trace that you send matches that of an existing trace, any fields in the existing trace and its spans are overwritten by the provided values, and any new fields provided are merged with the existing trace data. If the ID does not match, a new trace is created.", "parameters": { "projectId": { "type": "string", @@ -242,7 +249,8 @@ "$ref": "Empty" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.append" ] } }, @@ -311,7 +319,8 @@ "$ref": "ListTracesResponse" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" ] }, "get": { @@ -341,7 +350,8 @@ "$ref": "Trace" }, "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/trace.readonly" ] } } diff --git a/etc/api/clouduseraccounts/alpha/clouduseraccounts-api.json b/etc/api/clouduseraccounts/alpha/clouduseraccounts-api.json index 9123879eb8..50bb82e510 100644 --- a/etc/api/clouduseraccounts/alpha/clouduseraccounts-api.json +++ b/etc/api/clouduseraccounts/alpha/clouduseraccounts-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/lOQeocShB0dxGwrtxzB56jZ95Xk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/lOQeocShB0dxGwrtxzB56jZ95Xk\"", "discoveryVersion": "v1", "id": "clouduseraccounts:alpha", "name": "clouduseraccounts", diff --git a/etc/api/clouduseraccounts/beta/clouduseraccounts-api.json b/etc/api/clouduseraccounts/beta/clouduseraccounts-api.json index e6352acafc..d1b8b74f9e 100644 --- a/etc/api/clouduseraccounts/beta/clouduseraccounts-api.json +++ b/etc/api/clouduseraccounts/beta/clouduseraccounts-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/-BiORd5nMN3AbHTR5Pi2H1JslEk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/-BiORd5nMN3AbHTR5Pi2H1JslEk\"", "discoveryVersion": "v1", "id": "clouduseraccounts:beta", "name": "clouduseraccounts", diff --git a/etc/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json b/etc/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json index 797f2097a5..6226aa586a 100644 --- a/etc/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json +++ b/etc/api/clouduseraccounts/vm_alpha/clouduseraccounts-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/DmNFUFGhSh7oLg7RNX5k36KX4oA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/DmNFUFGhSh7oLg7RNX5k36KX4oA\"", "discoveryVersion": "v1", "id": "clouduseraccounts:vm_alpha", "name": "clouduseraccounts", diff --git a/etc/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json b/etc/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json index 1ce9f4d3a1..3dc412191d 100644 --- a/etc/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json +++ b/etc/api/clouduseraccounts/vm_beta/clouduseraccounts-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/NOgAExjYfIWiV_BL3FlcslmjncY\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/NOgAExjYfIWiV_BL3FlcslmjncY\"", "discoveryVersion": "v1", "id": "clouduseraccounts:vm_beta", "name": "clouduseraccounts", diff --git a/etc/api/compute/alpha/compute-api.json b/etc/api/compute/alpha/compute-api.json new file mode 100644 index 0000000000..d10adb0ecb --- /dev/null +++ b/etc/api/compute/alpha/compute-api.json @@ -0,0 +1,22903 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/cBm-zqTwhARaUrplDwCjl-Uk8_E\"", + "discoveryVersion": "v1", + "id": "compute:alpha", + "name": "compute", + "version": "alpha", + "revision": "20160908", + "title": "Compute Engine API", + "description": "Creates and runs virtual machines on Google Cloud Platform.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "https://www.google.com/images/icons/product/compute_engine-16.png", + "x32": "https://www.google.com/images/icons/product/compute_engine-32.png" + }, + "documentationLink": "https://developers.google.com/compute/docs/reference/latest/", + "protocol": "rest", + "baseUrl": "https://www.googleapis.com/compute/alpha/projects/", + "basePath": "/compute/alpha/projects/", + "rootUrl": "https://www.googleapis.com/", + "servicePath": "compute/alpha/projects/", + "batchPath": "batch", + "parameters": { + "alt": { + "type": "string", + "description": "Data format for the response.", + "default": "json", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query" + }, + "userIp": { + "type": "string", + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/compute.readonly": { + "description": "View your Google Compute Engine resources" + }, + "https://www.googleapis.com/auth/devstorage.full_control": { + "description": "Manage your data and permissions in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_only": { + "description": "View your data in Google Cloud Storage" + }, + "https://www.googleapis.com/auth/devstorage.read_write": { + "description": "Manage your data in Google Cloud Storage" + } + } + } + }, + "schemas": { + "AccessConfig": { + "id": "AccessConfig", + "type": "object", + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#accessConfig for access configs.", + "default": "compute#accessConfig" + }, + "name": { + "type": "string", + "description": "Name of this access configuration." + }, + "natIP": { + "type": "string", + "description": "An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance." + }, + "type": { + "type": "string", + "description": "The type of configuration. The default and only option is ONE_TO_ONE_NAT.", + "default": "ONE_TO_ONE_NAT", + "enum": [ + "ONE_TO_ONE_NAT" + ], + "enumDescriptions": [ + "" + ] + } + } + }, + "Address": { + "id": "Address", + "type": "object", + "description": "A reserved address resource.", + "properties": { + "address": { + "type": "string", + "description": "The static external IP address represented by this resource." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#address for addresses.", + "default": "compute#address" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.addresses.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional address resides. This field is not applicable to global addresses." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the address, which can be either IN_USE or RESERVED. An address that is RESERVED is currently reserved and available to use. An IN_USE address is currently being used by another resource and is not available.", + "enum": [ + "IN_USE", + "RESERVED" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "users": { + "type": "array", + "description": "[Output Only] The URLs of the resources that are using this address.", + "items": { + "type": "string" + } + } + } + }, + "AddressAggregatedList": { + "id": "AddressAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped address lists.", + "additionalProperties": { + "$ref": "AddressesScopedList", + "description": "[Output Only] Name of the scope containing this set of addresses." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#addressAggregatedList for aggregated lists of addresses.", + "default": "compute#addressAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "AddressList": { + "id": "AddressList", + "type": "object", + "description": "Contains a list of addresses.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of addresses.", + "items": { + "$ref": "Address" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#addressList for lists of addresses.", + "default": "compute#addressList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "AddressesScopedList": { + "id": "AddressesScopedList", + "type": "object", + "properties": { + "addresses": { + "type": "array", + "description": "[Output Only] List of addresses contained in this scope.", + "items": { + "$ref": "Address" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "AttachedDisk": { + "id": "AttachedDisk", + "type": "object", + "description": "An instance-attached disk resource.", + "properties": { + "autoDelete": { + "type": "boolean", + "description": "Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance)." + }, + "boot": { + "type": "boolean", + "description": "Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem." + }, + "deviceName": { + "type": "string", + "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, + "index": { + "type": "integer", + "description": "Assigns a zero-based index to this disk, where 0 is reserved for the boot disk. For example, if you have many disks attached to an instance, each disk would have a unique index number. If not specified, the server will choose an appropriate value.", + "format": "int32" + }, + "initializeParams": { + "$ref": "AttachedDiskInitializeParams", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both." + }, + "interface": { + "type": "string", + "description": "Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance.", + "enum": [ + "NVME", + "SCSI" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#attachedDisk for attached disks.", + "default": "compute#attachedDisk" + }, + "licenses": { + "type": "array", + "description": "[Output Only] Any valid publicly visible licenses.", + "items": { + "type": "string" + } + }, + "mode": { + "type": "string", + "description": "The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.", + "enum": [ + "READ_ONLY", + "READ_WRITE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "source": { + "type": "string", + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks. Note that for InstanceTemplate, it is just disk name, not URL for the disk." + }, + "type": { + "type": "string", + "description": "Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.", + "enum": [ + "PERSISTENT", + "SCRATCH" + ], + "enumDescriptions": [ + "", + "" + ], + "annotations": { + "required": [ + "compute.instances.insert" + ] + } + } + } + }, + "AttachedDiskInitializeParams": { + "id": "AttachedDiskInitializeParams", + "type": "object", + "description": "[Input Only] Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance.\n\nThis property is mutually exclusive with the source property; you can only define one or the other, but not both.", + "properties": { + "diskName": { + "type": "string", + "description": "Specifies the disk name. If not specified, the default is to use the name of the instance." + }, + "diskSizeGb": { + "type": "string", + "description": "Specifies the size of the disk in base-2 GB.", + "format": "int64" + }, + "diskStorageType": { + "type": "string", + "description": "[Deprecated] Storage type of the disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "diskType": { + "type": "string", + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." + }, + "sourceImage": { + "type": "string", + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a private image that you created, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nYou can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-private-family" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." + } + } + }, + "AuditConfig": { + "id": "AuditConfig", + "type": "object", + "description": "Enables \"data access\" audit logging for a service and specifies a list of members that are log-exempted.", + "properties": { + "exemptedMembers": { + "type": "array", + "description": "Specifies the identities that are exempted from \"data access\" audit logging for the `service` specified above. Follows the same format of Binding.members.", + "items": { + "type": "string" + } + }, + "service": { + "type": "string", + "description": "Specifies a service that will be enabled for \"data access\" audit logging. For example, `resourcemanager`, `storage`, `compute`. `allServices` is a special value that covers all services." + } + } + }, + "Autoscaler": { + "id": "Autoscaler", + "type": "object", + "description": "Represents an Autoscaler resource. Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define. For more information, read Autoscaling Groups of Instances.", + "properties": { + "autoscalingPolicy": { + "$ref": "AutoscalingPolicy", + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#autoscaler for autoscalers.", + "default": "compute#autoscaler" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.instanceGroups.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the autoscaler configuration.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "statusDetails": { + "type": "array", + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Examples: ?Error when fetching replicas: Replica Pool xxx doesn?t exist.? ?Autoscaling capped at min_num_replicas: 2.?", + "items": { + "$ref": "AutoscalerStatusDetails" + } + }, + "target": { + "type": "string", + "description": "URL of the managed instance group that this autoscaler will scale." + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." + } + } + }, + "AutoscalerAggregatedList": { + "id": "AutoscalerAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped autoscaler lists.", + "additionalProperties": { + "$ref": "AutoscalersScopedList", + "description": "[Output Only] Name of the scope containing this set of autoscalers." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#autoscalerAggregatedList for aggregated lists of autoscalers.", + "default": "compute#autoscalerAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "AutoscalerList": { + "id": "AutoscalerList", + "type": "object", + "description": "Contains a list of Autoscaler resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of Autoscaler resources.", + "items": { + "$ref": "Autoscaler" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#autoscalerList for lists of autoscalers.", + "default": "compute#autoscalerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "SCALING_TARGET_DOES_NOT_EXIST", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "AutoscalersScopedList": { + "id": "AutoscalersScopedList", + "type": "object", + "properties": { + "autoscalers": { + "type": "array", + "description": "[Output Only] List of autoscalers contained in this scope.", + "items": { + "$ref": "Autoscaler" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of autoscalers when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "AutoscalingPolicy": { + "id": "AutoscalingPolicy", + "type": "object", + "description": "Cloud Autoscaler policy.", + "properties": { + "coolDownPeriodSec": { + "type": "integer", + "description": "The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds.\n\nVirtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.", + "format": "int32" + }, + "cpuUtilization": { + "$ref": "AutoscalingPolicyCpuUtilization", + "description": "Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group." + }, + "customMetricUtilizations": { + "type": "array", + "description": "Configuration parameters of autoscaling based on a custom metric.", + "items": { + "$ref": "AutoscalingPolicyCustomMetricUtilization" + } + }, + "loadBalancingUtilization": { + "$ref": "AutoscalingPolicyLoadBalancingUtilization", + "description": "Configuration parameters of autoscaling based on load balancer." + }, + "maxNumReplicas": { + "type": "integer", + "description": "The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.", + "format": "int32" + }, + "minNumReplicas": { + "type": "integer", + "description": "The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.", + "format": "int32" + }, + "queueBasedScaling": { + "$ref": "AutoscalingPolicyQueueBasedScaling", + "description": "Configuration parameters of autoscaling based on queuing system." + } + } + }, + "AutoscalingPolicyCpuUtilization": { + "id": "AutoscalingPolicyCpuUtilization", + "type": "object", + "description": "CPU utilization policy.", + "properties": { + "utilizationTarget": { + "type": "number", + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "format": "double" + } + } + }, + "AutoscalingPolicyCustomMetricUtilization": { + "id": "AutoscalingPolicyCustomMetricUtilization", + "type": "object", + "description": "Custom utilization metric policy.", + "properties": { + "metric": { + "type": "string", + "description": "The identifier of the Cloud Monitoring metric. The metric cannot have negative values and should be a utilization metric, which means that the number of virtual machines handling requests should increase or decrease proportionally to the metric. The metric must also have a label of compute.googleapis.com/resource_id with the value of the instance's unique ID, although this alone does not guarantee that the metric is valid.\n\nFor example, the following is a valid metric:\ncompute.googleapis.com/instance/network/received_bytes_count\n\n\nThe following is not a valid metric because it does not increase or decrease based on usage:\ncompute.googleapis.com/instance/cpu/reserved_cores" + }, + "utilizationTarget": { + "type": "number", + "description": "Target value of the metric which autoscaler should maintain. Must be a positive value.", + "format": "double" + }, + "utilizationTargetType": { + "type": "string", + "description": "Defines how target utilization value is expressed for a Cloud Monitoring metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, the default is GAUGE.", + "enum": [ + "DELTA_PER_MINUTE", + "DELTA_PER_SECOND", + "GAUGE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "AutoscalingPolicyLoadBalancingUtilization": { + "id": "AutoscalingPolicyLoadBalancingUtilization", + "type": "object", + "description": "Configuration parameters of autoscaling based on load balancing.", + "properties": { + "utilizationTarget": { + "type": "number", + "description": "Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.", + "format": "double" + } + } + }, + "AutoscalingPolicyQueueBasedScaling": { + "id": "AutoscalingPolicyQueueBasedScaling", + "type": "object", + "description": "Configuration parameters of autoscaling based on queuing system.", + "properties": { + "acceptableBacklogPerInstance": { + "type": "number", + "description": "Scaling based on the average number of tasks in the queue per each active instance. The autoscaler keeps the average number of tasks per instance below this number, based on data collected in the last couple of minutes. The autoscaler will also take into account incoming tasks when calculating when to scale.", + "format": "double" + }, + "cloudPubSub": { + "$ref": "AutoscalingPolicyQueueBasedScalingCloudPubSub", + "description": "Configuration for Cloud Pub/Sub subscription queue." + }, + "singleWorkerThroughputPerSec": { + "type": "number", + "description": "The scaling algorithm will also calculate throughput estimates on its own; if you explicitly provide this value, the autoscaler will take into account your value as well as automatic estimates when deciding how to scale.", + "format": "double" + } + } + }, + "AutoscalingPolicyQueueBasedScalingCloudPubSub": { + "id": "AutoscalingPolicyQueueBasedScalingCloudPubSub", + "type": "object", + "description": "Configuration parameters for scaling based on Cloud Pub/Sub subscription queue.", + "properties": { + "subscription": { + "type": "string", + "description": "Cloud Pub/Sub subscription used for scaling. Provide the partial URL (starting with projects/) or just the subscription name. The subscription must be assigned to the topic specified in topicName and must be in a pull configuration. The subscription must belong to the same project as the Autoscaler." + }, + "topic": { + "type": "string", + "description": "Cloud Pub/Sub topic used for scaling. Provide the partial URL or partial URL (starting with projects/) or just the topic name. The topic must belong to the same project as the Autoscaler resource." + } + } + }, + "Backend": { + "id": "Backend", + "type": "object", + "description": "Message containing information of one individual backend.", + "properties": { + "balancingMode": { + "type": "string", + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nThis cannot be used for internal load balancing.", + "enum": [ + "CONNECTION", + "RATE", + "UTILIZATION" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "capacityScaler": { + "type": "number", + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "group": { + "type": "string", + "description": "The fully-qualified URL of a zonal Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be in a zone within the same region as the BackendService." + }, + "maxConnections": { + "type": "integer", + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "maxConnectionsPerInstance": { + "type": "integer", + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "maxRate": { + "type": "integer", + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "maxRatePerInstance": { + "type": "number", + "description": "The max requests per second (RPS) that a single backend instance can handle.This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "float" + }, + "maxUtilization": { + "type": "number", + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", + "format": "float" + } + } + }, + "BackendBucket": { + "id": "BackendBucket", + "type": "object", + "description": "A BackendBucket resource. This resource defines a Cloud Storage bucket.", + "properties": { + "bucketName": { + "type": "string", + "description": "Cloud Storage bucket name." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional textual description of the resource; provided by the client when the resource is created." + }, + "enableCdn": { + "type": "boolean", + "description": "If true, enable Cloud CDN for this BackendBucket." + }, + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Type of the resource.", + "default": "compute#backendBucket" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "BackendBucketList": { + "id": "BackendBucketList", + "type": "object", + "description": "Contains a list of BackendBucket resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "array", + "description": "A list of BackendBucket resources.", + "items": { + "$ref": "BackendBucket" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#backendBucketList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "BackendSSLPolicy": { + "id": "BackendSSLPolicy", + "type": "object", + "description": "Message containing backend SSL policies.", + "properties": { + "pinnedPeerCertificates": { + "type": "array", + "description": "List of PEM-encoded peer certificates, from which the public keys are extracted for authenticating the backend service.", + "items": { + "type": "string" + } + } + } + }, + "BackendService": { + "id": "BackendService", + "type": "object", + "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity.", + "properties": { + "affinityCookieTtlSec": { + "type": "integer", + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32" + }, + "backendSslPolicy": { + "$ref": "BackendSSLPolicy", + "description": "Backend SSL policies to enforce." + }, + "backends": { + "type": "array", + "description": "The list of backends that serve this BackendService.", + "items": { + "$ref": "Backend" + } + }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "enableCDN": { + "type": "boolean", + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." + }, + "fingerprint": { + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", + "format": "byte" + }, + "healthChecks": { + "type": "array", + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", + "items": { + "type": "string" + } + }, + "iaap": { + "$ref": "BackendServiceIAAP" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", + "default": "compute#backendService" + }, + "loadBalancingScheme": { + "type": "string", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "port": { + "type": "integer", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." + }, + "protocol": { + "type": "string", + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, HTTP2, TCP and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", + "enum": [ + "HTTP", + "HTTPS", + "SSL", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional backend service resides. This field is not applicable to global backend services." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sessionAffinity": { + "type": "string", + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "timeoutSec": { + "type": "integer", + "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", + "format": "int32" + } + } + }, + "BackendServiceAggregatedList": { + "id": "BackendServiceAggregatedList", + "type": "object", + "description": "Contains a list of BackendServicesScopedList.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped BackendService lists.", + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#backendServiceAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "BackendServiceGroupHealth": { + "id": "BackendServiceGroupHealth", + "type": "object", + "properties": { + "healthStatus": { + "type": "array", + "items": { + "$ref": "HealthStatus" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#backendServiceGroupHealth for the health of backend services.", + "default": "compute#backendServiceGroupHealth" + } + } + }, + "BackendServiceIAAP": { + "id": "BackendServiceIAAP", + "type": "object", + "description": "Identity Aware Application Proxy (Cloud Gatekeeper)", + "properties": { + "enabled": { + "type": "boolean" + }, + "oauth2ClientId": { + "type": "string" + }, + "oauth2ClientSecret": { + "type": "string" + }, + "oauth2ClientSecretSha256": { + "type": "string" + } + } + }, + "BackendServiceList": { + "id": "BackendServiceList", + "type": "object", + "description": "Contains a list of BackendService resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "array", + "description": "A list of BackendService resources.", + "items": { + "$ref": "BackendService" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#backendServiceList for lists of backend services.", + "default": "compute#backendServiceList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "type": "object", + "properties": { + "backendServices": { + "type": "array", + "description": "List of BackendServices contained in this scope.", + "items": { + "$ref": "BackendService" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "Binding": { + "id": "Binding", + "type": "object", + "description": "Associates `members` with a `role`.", + "properties": { + "members": { + "type": "array", + "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values:\n\n* `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account.\n\n* `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account.\n\n* `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`.\n\n* `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`.\n\n* `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`.\n\n* `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", + "items": { + "type": "string" + } + }, + "role": { + "type": "string", + "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`." + } + } + }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "If host is non-empty, this invalidation rule will only apply to requests with a Host header matching host." + }, + "path": { + "type": "string" + } + } + }, + "Condition": { + "id": "Condition", + "type": "object", + "description": "A condition to be met.", + "properties": { + "iam": { + "type": "string", + "description": "Trusted attributes supplied by the IAM system.", + "enum": [ + "ATTRIBUTION", + "AUTHORITY", + "NO_ATTR" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "op": { + "type": "string", + "description": "An operator to apply the subject with.", + "enum": [ + "DISCHARGED", + "EQUALS", + "IN", + "NOT_EQUALS", + "NOT_IN", + "NO_OP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "svc": { + "type": "string", + "description": "Trusted attributes discharged by the service." + }, + "sys": { + "type": "string", + "description": "Trusted attributes supplied by any service that owns resources and uses the IAM system for access control.", + "enum": [ + "IP", + "NAME", + "NO_ATTR", + "REGION", + "SERVICE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "DEPRECATED. Use 'values' instead." + }, + "values": { + "type": "array", + "description": "The objects of the condition. This is mutually exclusive with 'value'.", + "items": { + "type": "string" + } + } + } + }, + "ConnectionDraining": { + "id": "ConnectionDraining", + "type": "object", + "description": "Message containing connection draining configuration.", + "properties": { + "drainingTimeoutSec": { + "type": "integer", + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32" + } + } + }, + "CustomerEncryptionKey": { + "id": "CustomerEncryptionKey", + "type": "object", + "description": "Represents a customer-supplied encryption key", + "properties": { + "rawKey": { + "type": "string", + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." + }, + "rsaEncryptedKey": { + "type": "string", + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem" + }, + "sha256": { + "type": "string", + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." + } + } + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "type": "object", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "type": "string", + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." + } + } + }, + "DeprecationStatus": { + "id": "DeprecationStatus", + "type": "object", + "description": "Deprecation status for a public resource.", + "properties": { + "deleted": { + "type": "string", + "description": "An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to DELETED." + }, + "deprecated": { + "type": "string", + "description": "An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to DEPRECATED." + }, + "obsolete": { + "type": "string", + "description": "An optional RFC3339 timestamp on or after which the deprecation state of this resource will be changed to OBSOLETE." + }, + "replacement": { + "type": "string", + "description": "The URL of the suggested replacement for a deprecated resource. The suggested replacement resource must be the same kind of resource as the deprecated resource." + }, + "state": { + "type": "string", + "description": "The deprecation state of this resource. This can be DEPRECATED, OBSOLETE, or DELETED. Operations which create a new resource using a DEPRECATED resource will return successfully, but with a warning indicating the deprecated resource and recommending its replacement. Operations which use OBSOLETE or DELETED resources will be rejected and result in an error.", + "enum": [ + "DELETED", + "DEPRECATED", + "OBSOLETE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "Disk": { + "id": "Disk", + "type": "object", + "description": "A Disk resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#disk for disks.", + "default": "compute#disk" + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this disk, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a disk.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "Labels to apply to this disk. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, + "lastAttachTimestamp": { + "type": "string", + "description": "[Output Only] Last attach timestamp in RFC3339 text format." + }, + "lastDetachTimestamp": { + "type": "string", + "description": "[Output Only] Last detach timestamp in RFC3339 text format." + }, + "licenses": { + "type": "array", + "description": "Any applicable publicly visible licenses.", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.disks.insert" + ] + } + }, + "options": { + "type": "string", + "description": "Internal use only." + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the disk resides. Only applicable for regional resources." + }, + "replicaZones": { + "type": "array", + "description": "URLs of the zones where the disk should be replicated to. Only applicable for regional resources.", + "items": { + "type": "string" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined fully-qualified URL for this resource." + }, + "sizeGb": { + "type": "string", + "description": "Size of the persistent disk, specified in GB. You can specify this field when creating a persistent disk using the sourceImage or sourceSnapshot parameter, or specify it alone to create an empty persistent disk.\n\nIf you specify this field along with sourceImage or sourceSnapshot, the value of sizeGb must not be less than the size of the sourceImage or the size of the snapshot.", + "format": "int64" + }, + "sourceImage": { + "type": "string", + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a private image that you created, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nYou can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-private-family" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, + "sourceImageId": { + "type": "string", + "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used." + }, + "sourceSnapshot": { + "type": "string", + "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot" + }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, + "sourceSnapshotId": { + "type": "string", + "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of disk creation. Applicable statuses includes: CREATING, FAILED, READY, RESTORING.", + "enum": [ + "CREATING", + "FAILED", + "READY", + "RESTORING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "storageType": { + "type": "string", + "description": "[Deprecated] Storage type of the persistent disk.", + "enum": [ + "HDD", + "SSD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "type": { + "type": "string", + "description": "URL of the disk type resource describing which disk type to use to create the disk. Provide this when creating the disk." + }, + "users": { + "type": "array", + "description": "[Output Only] Links to the users of the disk (attached instances) in form: project/zones/zone/instances/instance", + "items": { + "type": "string" + } + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the disk resides." + } + } + }, + "DiskAggregatedList": { + "id": "DiskAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped disk lists.", + "additionalProperties": { + "$ref": "DisksScopedList", + "description": "[Output Only] Name of the scope containing this set of disks." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskAggregatedList for aggregated lists of persistent disks.", + "default": "compute#diskAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "DiskList": { + "id": "DiskList", + "type": "object", + "description": "A list of Disk resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of persistent disks.", + "items": { + "$ref": "Disk" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskList for lists of disks.", + "default": "compute#diskList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "type": "object", + "properties": { + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" + }, + "targetDisk": { + "type": "string", + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" + } + } + }, + "DiskType": { + "id": "DiskType", + "type": "object", + "description": "A DiskType resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "defaultDiskSizeGb": { + "type": "string", + "description": "[Output Only] Server-defined default disk size in GB.", + "format": "int64" + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this disk type." + }, + "description": { + "type": "string", + "description": "[Output Only] An optional description of this resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#diskType for disk types.", + "default": "compute#diskType" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "validDiskSize": { + "type": "string", + "description": "[Output Only] An optional textual description of the valid disk size, such as \"10GB-10TB\"." + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the disk type resides." + } + } + }, + "DiskTypeAggregatedList": { + "id": "DiskTypeAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped disk type lists.", + "additionalProperties": { + "$ref": "DiskTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of disk types." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskTypeAggregatedList.", + "default": "compute#diskTypeAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "DiskTypeList": { + "id": "DiskTypeList", + "type": "object", + "description": "Contains a list of disk types.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Disk Type resources.", + "items": { + "$ref": "DiskType" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#diskTypeList for disk types.", + "default": "compute#diskTypeList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "DiskTypesScopedList": { + "id": "DiskTypesScopedList", + "type": "object", + "properties": { + "diskTypes": { + "type": "array", + "description": "[Output Only] List of disk types contained in this scope.", + "items": { + "$ref": "DiskType" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of disk types when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "DisksResizeRequest": { + "id": "DisksResizeRequest", + "type": "object", + "properties": { + "sizeGb": { + "type": "string", + "description": "The new size of the persistent disk, which is specified in GB.", + "format": "int64" + } + } + }, + "DisksScopedList": { + "id": "DisksScopedList", + "type": "object", + "properties": { + "disks": { + "type": "array", + "description": "[Output Only] List of disks contained in this scope.", + "items": { + "$ref": "Disk" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of disks when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "Firewall": { + "id": "Firewall", + "type": "object", + "description": "Represents a Firewall resource.", + "properties": { + "allowed": { + "type": "array", + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "items": { + "type": "object", + "properties": { + "IPProtocol": { + "type": "string", + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol number." + }, + "ports": { + "type": "array", + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "items": { + "type": "string" + } + } + } + } + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Ony] Type of the resource. Always compute#firewall for firewall rules.", + "default": "compute#firewall" + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.firewalls.insert", + "compute.firewalls.patch" + ] + } + }, + "network": { + "type": "string", + "description": "URL of the network resource for this firewall rule. If not specified when creating a firewall rule, the default network is used:\nglobal/networks/default\nIf you choose to specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/myproject/global/networks/my-network \n- projects/myproject/global/networks/my-network \n- global/networks/default" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sourceRanges": { + "type": "array", + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", + "items": { + "type": "string" + } + }, + "sourceTags": { + "type": "array", + "description": "If source tags are specified, the firewall will apply only to traffic with source IP that belongs to a tag listed in source tags. Source tags cannot be used to control traffic to an instance's external IP address. Because tags are associated with an instance, not an IP address. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", + "items": { + "type": "string" + } + }, + "targetTags": { + "type": "array", + "description": "A list of instance tags indicating sets of instances located in the network that may make network connections as specified in allowed[]. If no targetTags are specified, the firewall rule applies to all instances on the specified network.", + "items": { + "type": "string" + } + } + } + }, + "FirewallList": { + "id": "FirewallList", + "type": "object", + "description": "Contains a list of firewalls.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Firewall resources.", + "items": { + "$ref": "Firewall" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#firewallList for lists of firewalls.", + "default": "compute#firewallList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "FixedOrPercent": { + "id": "FixedOrPercent", + "type": "object", + "description": "Encapsulates numeric value that can be either absolute or relative.", + "properties": { + "calculated": { + "type": "integer", + "description": "[Output Only] Absolute value calculated based on mode: mode = fixed -\u003e calculated = fixed = percent -\u003e calculated = ceiling(percent/100 * base_value)", + "format": "int32" + }, + "fixed": { + "type": "integer", + "description": "fixed must be non-negative.", + "format": "int32" + }, + "percent": { + "type": "integer", + "description": "percent must belong to [0, 100].", + "format": "int32" + } + } + }, + "ForwardingRule": { + "id": "ForwardingRule", + "type": "object", + "description": "A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, portRange] tuple.", + "properties": { + "IPAddress": { + "type": "string", + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nFor global forwarding rules, the address must be a global IP; for regional forwarding rules, the address must live in the same region as the forwarding rule. By default, this field is empty and an ephemeral IP from the same scope (global or regional) will be assigned.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnetwork configured for the forwarding rule. A reserved address cannot be used. If the field is empty, the IP address will be automatically allocated from the internal IP range of the subnetwork or network configured for this forwarding rule." + }, + "IPProtocol": { + "type": "string", + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL\u003c/code, only TCP and UDP are valid.", + "enum": [ + "AH", + "ESP", + "ICMP", + "SCTP", + "TCP", + "UDP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "backendService": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "dnsLabel": { + "type": "string", + "description": "An optional prefix to the DNS name for this Forwarding Rule. If specified, will be the first label of the fully qualified domain name.\n\nThe label must be 1-63 characters long, and comply with RFC1035. Specifically, the label must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.\n\nThis field is only used for internal load balancing.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "dnsName": { + "type": "string", + "description": "[Output Only] The internal fully qualified domain name for this Forwarding Rule.\n\nThis field is only used for internal load balancing." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", + "default": "compute#forwardingRule" + }, + "loadBalancingScheme": { + "type": "string", + "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "network": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used." + }, + "portRange": { + "type": "string", + "description": "Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nThis field is not used for internal load balancing." + }, + "ports": { + "type": "array", + "description": "This field is not used for external load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. If the port list is not provided then all ports are allowed to pass through.\n\nYou may specify a maximum of up to 5 ports.", + "items": { + "type": "string" + } + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the regional forwarding rule resides. This field is not applicable to global forwarding rules." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "subnetwork": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified." + }, + "target": { + "type": "string", + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of a type appropriate to the target object. For example, TargetHttpProxy requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.\n\nThis field is not used for internal load balancing." + } + } + }, + "ForwardingRuleAggregatedList": { + "id": "ForwardingRuleAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped forwarding rule lists.", + "additionalProperties": { + "$ref": "ForwardingRulesScopedList", + "description": "Name of the scope containing this set of addresses." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#forwardingRuleAggregatedList for lists of forwarding rules.", + "default": "compute#forwardingRuleAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "ForwardingRuleList": { + "id": "ForwardingRuleList", + "type": "object", + "description": "Contains a list of ForwardingRule resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Set by the server." + }, + "items": { + "type": "array", + "description": "A list of ForwardingRule resources.", + "items": { + "$ref": "ForwardingRule" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#forwardingRuleList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "ForwardingRulesScopedList": { + "id": "ForwardingRulesScopedList", + "type": "object", + "properties": { + "forwardingRules": { + "type": "array", + "description": "List of forwarding rules contained in this scope.", + "items": { + "$ref": "ForwardingRule" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of forwarding rules when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "GlobalSetLabelsRequest": { + "id": "GlobalSetLabelsRequest", + "type": "object", + "properties": { + "labelFingerprint": { + "type": "string", + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash when updating or changing labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", + "additionalProperties": { + "type": "string" + } + } + } + }, + "GuestOsFeature": { + "id": "GuestOsFeature", + "type": "object", + "description": "Features supported by the guest os.", + "properties": { + "type": { + "type": "string", + "description": "The type of supported feature..", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "VIRTIO_SCSI_MULTIQUEUE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "HTTP2HealthCheck": { + "id": "HTTP2HealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP/2 health check request. The default value is /." + } + } + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP health check request. The default value is /." + } + } + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTPS health check request. The default value is /." + } + } + }, + "HealthCheck": { + "id": "HealthCheck", + "type": "object", + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "properties": { + "checkIntervalSec": { + "type": "integer", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in 3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Type of the resource.", + "default": "compute#healthCheck" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32" + }, + "type": { + "type": "string", + "description": "Specifies the type of the healthCheck, either TCP, UDP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "unhealthyThreshold": { + "type": "integer", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32" + } + } + }, + "HealthCheckList": { + "id": "HealthCheckList", + "type": "object", + "description": "Contains a list of HealthCheck resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#healthCheckList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "HealthCheckReference": { + "id": "HealthCheckReference", + "type": "object", + "description": "A full or valid partial URL to a health check. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project-id/global/httpHealthChecks/health-check \n- projects/project-id/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "properties": { + "healthCheck": { + "type": "string" + } + } + }, + "HealthStatus": { + "id": "HealthStatus", + "type": "object", + "properties": { + "healthState": { + "type": "string", + "description": "Health state of the instance.", + "enum": [ + "HEALTHY", + "UNHEALTHY" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "instance": { + "type": "string", + "description": "URL of the instance resource." + }, + "ipAddress": { + "type": "string", + "description": "The IP address represented by this resource." + }, + "port": { + "type": "integer", + "description": "The port on the instance.", + "format": "int32" + } + } + }, + "HostRule": { + "id": "HostRule", + "type": "object", + "description": "UrlMaps A host-matching rule for a URL. If matched, will use the named PathMatcher to select the BackendService.", + "properties": { + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "hosts": { + "type": "array", + "description": "The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..", + "items": { + "type": "string" + } + }, + "pathMatcher": { + "type": "string", + "description": "The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL's host portion." + } + } + }, + "HttpHealthCheck": { + "id": "HttpHealthCheck", + "type": "object", + "description": "An HttpHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTP.", + "properties": { + "checkIntervalSec": { + "type": "integer", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#httpHealthCheck for HTTP health checks.", + "default": "compute#httpHealthCheck" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "port": { + "type": "integer", + "description": "The TCP port number for the HTTP health check request. The default value is 80.", + "format": "int32" + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP health check request. The default value is /." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "timeoutSec": { + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32" + }, + "unhealthyThreshold": { + "type": "integer", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32" + } + } + }, + "HttpHealthCheckList": { + "id": "HttpHealthCheckList", + "type": "object", + "description": "Contains a list of HttpHealthCheck resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "A list of HttpHealthCheck resources.", + "items": { + "$ref": "HttpHealthCheck" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#httpHealthCheckList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "HttpsHealthCheck": { + "id": "HttpsHealthCheck", + "type": "object", + "description": "An HttpsHealthCheck resource. This resource defines a template for how individual instances should be checked for health, via HTTPS.", + "properties": { + "checkIntervalSec": { + "type": "integer", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "host": { + "type": "string", + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Type of the resource.", + "default": "compute#httpsHealthCheck" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "port": { + "type": "integer", + "description": "The TCP port number for the HTTPS health check request. The default value is 443.", + "format": "int32" + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTPS health check request. The default value is \"/\"." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "timeoutSec": { + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have a greater value than checkIntervalSec.", + "format": "int32" + }, + "unhealthyThreshold": { + "type": "integer", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32" + } + } + }, + "HttpsHealthCheckList": { + "id": "HttpsHealthCheckList", + "type": "object", + "description": "Contains a list of HttpsHealthCheck resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "array", + "description": "A list of HttpsHealthCheck resources.", + "items": { + "$ref": "HttpsHealthCheck" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#httpsHealthCheckList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "Image": { + "id": "Image", + "type": "object", + "description": "An Image resource.", + "properties": { + "archiveSizeBytes": { + "type": "string", + "description": "Size of the image tar.gz archive stored in Google Cloud Storage (in bytes).", + "format": "int64" + }, + "creationTimestamp": { + "type": "string", + "description": "Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "The deprecation status associated with this image." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "diskSizeGb": { + "type": "string", + "description": "Size of the image when restored onto a persistent disk (in GB).", + "format": "int64" + }, + "family": { + "type": "string", + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." + }, + "guestOsFeatures": { + "type": "array", + "description": "Features of the guest os, valid for bootable images only.", + "items": { + "$ref": "GuestOsFeature" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "imageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#image for images.", + "default": "compute#image" + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this image, which is essentially a hash of the labels used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve an image.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "Labels to apply to this image. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, + "licenses": { + "type": "array", + "description": "Any applicable license URI.", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.images.insert" + ] + } + }, + "rawDisk": { + "type": "object", + "description": "The parameters of the raw disk image.", + "properties": { + "containerType": { + "type": "string", + "description": "The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.", + "enum": [ + "TAR" + ], + "enumDescriptions": [ + "" + ] + }, + "sha1Checksum": { + "type": "string", + "description": "An optional SHA1 checksum of the disk image before unpackaging; provided by the client when the disk image is created.", + "pattern": "[a-f0-9]{40}" + }, + "source": { + "type": "string", + "description": "The full Google Cloud Storage URL where the disk image is stored. You must provide either this property or the sourceDisk property but not both.", + "annotations": { + "required": [ + "compute.images.insert" + ] + } + } + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sourceDisk": { + "type": "string", + "description": "URL of the The source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disk/disk \n- projects/project/zones/zone/disk/disk \n- zones/zone/disks/disk" + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "type": "string", + "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name." + }, + "sourceType": { + "type": "string", + "description": "The type of the image used to create this disk. The default and only value is RAW", + "default": "RAW", + "enum": [ + "RAW" + ], + "enumDescriptions": [ + "" + ] + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the image. An image can be used to create other resources, such as instances, only after the image has been successfully created and the status is set to READY. Possible values are FAILED, PENDING, or READY.", + "enum": [ + "FAILED", + "PENDING", + "READY" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "ImageList": { + "id": "ImageList", + "type": "object", + "description": "Contains a list of images.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Image resources.", + "items": { + "$ref": "Image" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#imageList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "Instance": { + "id": "Instance", + "type": "object", + "description": "An Instance resource.", + "properties": { + "canIpForward": { + "type": "boolean", + "description": "Allows this instance to send and receive packets with non-matching destination or source IPs. This is required if you plan to use this instance to forward routes. For more information, see Enabling IP Forwarding." + }, + "cpuPlatform": { + "type": "string", + "description": "[Output Only] The CPU platform used by this instance." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "disks": { + "type": "array", + "description": "Array of disks associated with this instance. Persistent disks must be created before you can assign them.", + "items": { + "$ref": "AttachedDisk" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "instanceEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts data for an instance with a customer-supplied encryption key.\n\nIf you are creating a new instance, this field encrypts the local SSD and in-memory contents of the instance using a key that you provide.\n\nIf you are restarting an instance protected with a customer-supplied encryption key, you must provide the correct key in order to successfully restart the instance.\n\nIf you do not provide an encryption key when creating the instance, then the local SSD and in-memory contents will be encrypted using an automatically generated key and you do not need to provide a key to start the instance later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt local SSDs and in-memory content in a managed instance group." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#instance for instances.", + "default": "compute#instance" + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "Labels to apply to this instance. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, + "machineType": { + "type": "string", + "description": "Full or partial URL of the machine type resource to use for this instance, in the format: zones/zone/machineTypes/machine-type. This is provided by the client when the instance is created. For example, the following is a valid partial url to a predefined machine type:\n\nzones/us-central1-f/machineTypes/n1-standard-1 \n\nTo create a custom machine type, provide a URL to a machine type in the following format, where CPUS is 1 or an even number up to 32 (2, 4, 6, ... 24, etc), and MEMORY is the total memory for this instance. Memory must be a multiple of 256 MB and must be supplied in MB (e.g. 5 GB of memory is 5120 MB):\n\nzones/zone/machineTypes/custom-CPUS-MEMORY \n\nFor example: zones/us-central1-f/machineTypes/custom-4-5120 \n\nFor a full list of restrictions, read the Specifications for custom machine types.", + "annotations": { + "required": [ + "compute.instances.insert" + ] + } + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs assigned to this instance. This includes custom metadata and predefined keys." + }, + "name": { + "type": "string", + "description": "The name of the resource, provided by the client when initially creating the resource. The resource name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash." + }, + "networkInterfaces": { + "type": "array", + "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Only one interface is supported per instance.", + "items": { + "$ref": "NetworkInterface" + } + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Scheduling options for this instance." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + }, + "serviceAccounts": { + "type": "array", + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", + "items": { + "$ref": "ServiceAccount" + } + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and TERMINATED.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "statusMessage": { + "type": "string", + "description": "[Output Only] An optional, human-readable explanation of the status." + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to this instance. Tags are used to identify valid sources or targets for network firewalls and are specified by the client during instance creation. The tags can be later modified by the setTags method. Each tag within the list must comply with RFC1035." + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the instance resides." + } + } + }, + "InstanceAggregatedList": { + "id": "InstanceAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped instance lists.", + "additionalProperties": { + "$ref": "InstancesScopedList", + "description": "[Output Only] Name of the scope containing this set of instances." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#instanceAggregatedList for aggregated lists of Instance resources.", + "default": "compute#instanceAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "InstanceGroup": { + "id": "InstanceGroup", + "type": "object", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] The creation timestamp for this instance group in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "fingerprint": { + "type": "string", + "description": "[Output Only] The fingerprint of the named ports. The system uses this fingerprint to detect conflicts when multiple users change the named ports concurrently.", + "format": "byte" + }, + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this instance group. The server generates this identifier.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroup for instance groups.", + "default": "compute#instanceGroup" + }, + "name": { + "type": "string", + "description": "The name of the instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + } + }, + "namedPorts": { + "type": "array", + "description": "Assigns a name to a port number. For example: {name: \"http\", port: 80}\n\nThis allows the system to reference ports by the assigned name instead of a port number. Named ports can also contain multiple ports. For example: [{name: \"http\", port: 80},{name: \"http\", port: 8080}] \n\nNamed ports apply to all instances in this instance group.", + "items": { + "$ref": "NamedPort" + } + }, + "network": { + "type": "string", + "description": "The URL of the network to which all instances in the instance group belong." + }, + "region": { + "type": "string", + "description": "The URL of the region where the instance group is located (for regional resources)." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this instance group. The server generates this URL." + }, + "size": { + "type": "integer", + "description": "[Output Only] The total number of instances in the instance group.", + "format": "int32" + }, + "subnetwork": { + "type": "string", + "description": "The URL of the subnetwork to which all instances in the instance group belong." + }, + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." + } + } + }, + "InstanceGroupAggregatedList": { + "id": "InstanceGroupAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this aggregated list of instance groups. The server generates this identifier." + }, + "items": { + "type": "object", + "description": "A map of scoped instance group lists.", + "additionalProperties": { + "$ref": "InstanceGroupsScopedList", + "description": "The name of the scope that contains this set of instance groups." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupAggregatedList for aggregated lists of instance groups.", + "default": "compute#instanceGroupAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "InstanceGroupList": { + "id": "InstanceGroupList", + "type": "object", + "description": "A list of InstanceGroup resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this list of instance groups. The server generates this identifier." + }, + "items": { + "type": "array", + "description": "A list of instance groups.", + "items": { + "$ref": "InstanceGroup" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupList for instance group lists.", + "default": "compute#instanceGroupList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "InstanceGroupManager": { + "id": "InstanceGroupManager", + "type": "object", + "description": "An Instance Group Manager resource.", + "properties": { + "autoHealingPolicies": { + "type": "array", + "description": "The autohealing policy for this managed instance group. You can specify only one value.", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + } + }, + "baseInstanceName": { + "type": "string", + "description": "The base instance name to use for instances in this group. The value must be 1-58 characters long. Instances are named by appending a hyphen and a random four-character string to the base instance name. The base instance name must comply with RFC1035.", + "pattern": "[a-z][-a-z0-9]{0,57}", + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + } + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] The creation timestamp for this managed instance group in RFC3339 text format." + }, + "currentActions": { + "$ref": "InstanceGroupManagerActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are scheduled for each of those actions." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "failoverAction": { + "type": "string", + "description": "The action to perform in case of zone failure (set only for Regional instance group managers).", + "enum": [ + "NO_FAILOVER", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "fingerprint": { + "type": "string", + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", + "format": "byte" + }, + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "format": "uint64" + }, + "instanceGroup": { + "type": "string", + "description": "[Output Only] The URL of the Instance Group resource." + }, + "instanceTemplate": { + "type": "string", + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManager for managed instance groups.", + "default": "compute#instanceGroupManager" + }, + "name": { + "type": "string", + "description": "The name of the managed instance group. The name must be 1-63 characters long, and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + } + }, + "namedPorts": { + "type": "array", + "description": "Named ports configured for the Instance Groups complementary to this Instance Group Manager.", + "items": { + "$ref": "NamedPort" + } + }, + "pendingActions": { + "$ref": "InstanceGroupManagerPendingActionsSummary", + "description": "[Output Only] The list of instance actions and the number of instances in this managed instance group that are pending for each of those actions." + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources)." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this managed instance group. The server defines this URL." + }, + "targetPools": { + "type": "array", + "description": "The URLs for all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + } + }, + "targetSize": { + "type": "integer", + "description": "The target number of running instances for this managed instance group. Deleting or abandoning instances reduces this number. Resizing the group changes this number.", + "format": "int32", + "annotations": { + "required": [ + "compute.instanceGroupManagers.insert" + ] + } + }, + "updatePolicy": { + "$ref": "InstanceGroupManagerUpdatePolicy", + "description": "The update policy for this managed instance group." + }, + "versions": { + "type": "array", + "description": "Versions supported by this IGM. User should set this field if they need fine-grained control over how many instances in each version are run by this IGM. Versions are keyed by instanceTemplate. Every instanceTemplate can appear at most once. This field overrides instanceTemplate field. If both instanceTemplate and versions are set, the user receives a warning. \"instanceTemplate: X\" is semantically equivalent to \"versions [ { instanceTemplate: X } ]\". Exactly one version must have targetSize field left unset. Size of such a version will be calculated automatically.", + "items": { + "$ref": "InstanceGroupManagerVersion" + } + }, + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." + } + } + }, + "InstanceGroupManagerActionsSummary": { + "id": "InstanceGroupManagerActionsSummary", + "type": "object", + "properties": { + "abandoning": { + "type": "integer", + "description": "[Output Only] The total number of instances in the managed instance group that are scheduled to be abandoned. Abandoning an instance removes it from the managed instance group without deleting it.", + "format": "int32" + }, + "creating": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32" + }, + "creatingWithoutRetries": { + "type": "integer", + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's target_size value accordingly.", + "format": "int32" + }, + "deleting": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be deleted or are currently being deleted.", + "format": "int32" + }, + "none": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are running and have no scheduled actions.", + "format": "int32" + }, + "recreating": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be recreated or are currently being being recreated. Recreating an instance deletes the existing root persistent disk and creates a new disk from the image that is defined in the instance template.", + "format": "int32" + }, + "refreshing": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are being reconfigured with properties that do not require a restart or a recreate action. For example, setting or removing target pools for the instance.", + "format": "int32" + }, + "restarting": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be restarted or are currently being restarted.", + "format": "int32" + } + } + }, + "InstanceGroupManagerAggregatedList": { + "id": "InstanceGroupManagerAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this aggregated list of managed instance groups. The server generates this identifier." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of filtered managed instance group lists.", + "additionalProperties": { + "$ref": "InstanceGroupManagersScopedList", + "description": "[Output Only] The name of the scope that contains this set of managed instance groups." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerAggregatedList for an aggregated list of managed instance groups.", + "default": "compute#instanceGroupManagerAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "InstanceGroupManagerAutoHealingPolicy": { + "id": "InstanceGroupManagerAutoHealingPolicy", + "type": "object", + "properties": { + "healthCheck": { + "type": "string", + "description": "The URL for the HealthCheck that signals autohealing." + }, + "initialDelaySec": { + "type": "integer", + "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", + "format": "int32" + } + } + }, + "InstanceGroupManagerList": { + "id": "InstanceGroupManagerList", + "type": "object", + "description": "[Output Only] A list of managed instance groups.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of managed instance groups.", + "items": { + "$ref": "InstanceGroupManager" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups.", + "default": "compute#instanceGroupManagerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "InstanceGroupManagerPendingActionsSummary": { + "id": "InstanceGroupManagerPendingActionsSummary", + "type": "object", + "properties": { + "creating": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are pending to be created.", + "format": "int32" + }, + "deleting": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are pending to be deleted.", + "format": "int32" + }, + "recreating": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are pending to be recreated.", + "format": "int32" + }, + "restarting": { + "type": "integer", + "description": "[Output Only] The number of instances in the managed instance group that are pending to be restarted.", + "format": "int32" + } + } + }, + "InstanceGroupManagerUpdatePolicy": { + "id": "InstanceGroupManagerUpdatePolicy", + "type": "object", + "properties": { + "maxSurge": { + "$ref": "FixedOrPercent", + "description": "Maximum number of instances that can be created above the InstanceGroupManager.targetSize during the update process. By default, a fixed value of 1 is used. Using maxSurge \u003e 0 will cause instance names to change during the update process. At least one of { maxSurge, maxUnavailable } must be greater than 0." + }, + "maxUnavailable": { + "$ref": "FixedOrPercent", + "description": "Maximum number of instances that can be unavailable during the update process. The instance is considered available if all of the following conditions are satisfied: 1. instance's status is RUNNING 2. instance's liveness health check result was observed to be HEALTHY at least once By default, a fixed value of 1 is used. At least one of { maxSurge, maxUnavailable } must be greater than 0." + }, + "minReadySec": { + "type": "integer", + "description": "Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600].", + "format": "int32" + }, + "minimalAction": { + "type": "string", + "description": "Minimal action to be taken on an instance. The order of action types is: RESTART \u003c REPLACE.", + "enum": [ + "REPLACE", + "RESTART" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "type": { + "type": "string", + "enum": [ + "OPPORTUNISTIC", + "PROACTIVE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "InstanceGroupManagerVersion": { + "id": "InstanceGroupManagerVersion", + "type": "object", + "properties": { + "instanceTemplate": { + "type": "string" + }, + "tag": { + "type": "string", + "description": "Tag describing the version. Used to trigger rollout of a target version even if instance_template remains unchanged." + }, + "targetSize": { + "$ref": "FixedOrPercent", + "description": "Intended number of instances that are created from instanceTemplate. The final number of instances created from instanceTemplate will be equal to: * if expressed as fixed number: min(targetSize.fixed, instanceGroupManager.targetSize), * if expressed as percent: ceiling(targetSize.percent * InstanceGroupManager.targetSize). If unset, this version will handle all the remaining instances." + } + } + }, + "InstanceGroupManagersAbandonInstancesRequest": { + "id": "InstanceGroupManagersAbandonInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The URL for one or more instances to abandon from the managed instance group.", + "items": { + "type": "string" + } + } + } + }, + "InstanceGroupManagersDeleteInstancesRequest": { + "id": "InstanceGroupManagersDeleteInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The list of instances to delete from this managed instance group. Specify one or more instance URLs.", + "items": { + "type": "string" + } + } + } + }, + "InstanceGroupManagersListManagedInstancesResponse": { + "id": "InstanceGroupManagersListManagedInstancesResponse", + "type": "object", + "properties": { + "managedInstances": { + "type": "array", + "description": "[Output Only] The list of instances in the managed instance group.", + "items": { + "$ref": "ManagedInstance" + } + } + } + }, + "InstanceGroupManagersRecreateInstancesRequest": { + "id": "InstanceGroupManagersRecreateInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The URL for one or more instances to recreate.", + "items": { + "type": "string" + } + } + } + }, + "InstanceGroupManagersResizeAdvancedRequest": { + "id": "InstanceGroupManagersResizeAdvancedRequest", + "type": "object", + "properties": { + "noCreationRetries": { + "type": "boolean", + "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API." + }, + "targetSize": { + "type": "integer", + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32" + } + } + }, + "InstanceGroupManagersScopedList": { + "id": "InstanceGroupManagersScopedList", + "type": "object", + "properties": { + "instanceGroupManagers": { + "type": "array", + "description": "[Output Only] The list of managed instance groups that are contained in the specified project and zone.", + "items": { + "$ref": "InstanceGroupManager" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] The warning that replaces the list of managed instance groups when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "InstanceGroupManagersSetAutoHealingRequest": { + "id": "InstanceGroupManagersSetAutoHealingRequest", + "type": "object", + "properties": { + "autoHealingPolicies": { + "type": "array", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + } + } + } + }, + "InstanceGroupManagersSetInstanceTemplateRequest": { + "id": "InstanceGroupManagersSetInstanceTemplateRequest", + "type": "object", + "properties": { + "instanceTemplate": { + "type": "string", + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." + } + } + }, + "InstanceGroupManagersSetTargetPoolsRequest": { + "id": "InstanceGroupManagersSetTargetPoolsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "The fingerprint of the target pools information. Use this optional property to prevent conflicts when multiple users change the target pools settings concurrently. Obtain the fingerprint with the instanceGroupManagers.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte" + }, + "targetPools": { + "type": "array", + "description": "The list of target pool URLs that instances in this managed instance group belong to. The managed instance group applies these target pools to all of the instances in the group. Existing instances and new instances in the group all receive these target pool settings.", + "items": { + "type": "string" + } + } + } + }, + "InstanceGroupsAddInstancesRequest": { + "id": "InstanceGroupsAddInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The list of instances to add to the instance group.", + "items": { + "$ref": "InstanceReference" + } + } + } + }, + "InstanceGroupsListInstances": { + "id": "InstanceGroupsListInstances", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this list of instances in the specified instance group. The server generates this identifier." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of instances and any named ports that are assigned to those instances.", + "items": { + "$ref": "InstanceWithNamedPorts" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", + "default": "compute#instanceGroupsListInstances" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this list of instances in the specified instance groups. The server generates this URL." + } + } + }, + "InstanceGroupsListInstancesRequest": { + "id": "InstanceGroupsListInstancesRequest", + "type": "object", + "properties": { + "instanceState": { + "type": "string", + "description": "A filter for the state of the instances in the instance group. Valid options are ALL or RUNNING. If you do not specify this parameter the list includes all instances regardless of their state.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "InstanceGroupsRemoveInstancesRequest": { + "id": "InstanceGroupsRemoveInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The list of instances to remove from the instance group.", + "items": { + "$ref": "InstanceReference" + } + } + } + }, + "InstanceGroupsScopedList": { + "id": "InstanceGroupsScopedList", + "type": "object", + "properties": { + "instanceGroups": { + "type": "array", + "description": "[Output Only] The list of instance groups that are contained in this scope.", + "items": { + "$ref": "InstanceGroup" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] An informational warning that replaces the list of instance groups when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "InstanceGroupsSetNamedPortsRequest": { + "id": "InstanceGroupsSetNamedPortsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte" + }, + "namedPorts": { + "type": "array", + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + } + } + } + }, + "InstanceList": { + "id": "InstanceList", + "type": "object", + "description": "Contains a list of instances.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of instances.", + "items": { + "$ref": "Instance" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#instanceList for lists of Instance resources.", + "default": "compute#instanceList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "InstanceMoveRequest": { + "id": "InstanceMoveRequest", + "type": "object", + "properties": { + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" + }, + "targetInstance": { + "type": "string", + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" + } + } + }, + "InstanceProperties": { + "id": "InstanceProperties", + "type": "object", + "description": "", + "properties": { + "canIpForward": { + "type": "boolean", + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding for instances documentation for more information." + }, + "description": { + "type": "string", + "description": "An optional text description for the instances that are created from this instance template." + }, + "disks": { + "type": "array", + "description": "An array of disks that are associated with the instances that are created from this template.", + "items": { + "$ref": "AttachedDisk" + } + }, + "labels": { + "type": "object", + "description": "Labels to apply to instances that are created from this template. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, + "machineType": { + "type": "string", + "description": "The machine type to use for instances that are created from this template.", + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + } + }, + "metadata": { + "$ref": "Metadata", + "description": "The metadata key/value pairs to assign to instances that are created from this template. These pairs can consist of custom metadata or predefined keys. See Project and instance metadata for more information." + }, + "networkInterfaces": { + "type": "array", + "description": "An array of network access configurations for this interface.", + "items": { + "$ref": "NetworkInterface" + } + }, + "scheduling": { + "$ref": "Scheduling", + "description": "Specifies the scheduling options for the instances that are created from this template." + }, + "serviceAccounts": { + "type": "array", + "description": "A list of service accounts with specified scopes. Access tokens for these service accounts are available to the instances that are created from this template. Use metadata queries to obtain the access tokens for these instances.", + "items": { + "$ref": "ServiceAccount" + } + }, + "tags": { + "$ref": "Tags", + "description": "A list of tags to apply to the instances that are created from this template. The tags identify valid sources or targets for network firewalls. The setTags method can modify this list of tags. Each tag within the list must comply with RFC1035." + } + } + }, + "InstanceReference": { + "id": "InstanceReference", + "type": "object", + "properties": { + "instance": { + "type": "string", + "description": "The URL for a specific instance." + } + } + }, + "InstanceTemplate": { + "id": "InstanceTemplate", + "type": "object", + "description": "An Instance Template resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] The creation timestamp for this instance template in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceTemplate for instance templates.", + "default": "compute#instanceTemplate" + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.instanceTemplates.insert" + ] + } + }, + "properties": { + "$ref": "InstanceProperties", + "description": "The instance properties for this instance template." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this instance template. The server defines this URL." + }, + "sourceInstance": { + "type": "string", + "description": "The source instance used to create the template. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance" + } + } + }, + "InstanceTemplateList": { + "id": "InstanceTemplateList", + "type": "object", + "description": "A list of instance templates.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] A unique identifier for this instance template. The server defines this identifier." + }, + "items": { + "type": "array", + "description": "[Output Only] list of InstanceTemplate resources.", + "items": { + "$ref": "InstanceTemplate" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceTemplatesListResponse for instance template lists.", + "default": "compute#instanceTemplateList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this instance template list. The server defines this URL." + } + } + }, + "InstanceWithNamedPorts": { + "id": "InstanceWithNamedPorts", + "type": "object", + "properties": { + "instance": { + "type": "string", + "description": "[Output Only] The URL of the instance." + }, + "namedPorts": { + "type": "array", + "description": "[Output Only] The named ports that belong to this instance group.", + "items": { + "$ref": "NamedPort" + } + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the instance.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "InstancesScopedList": { + "id": "InstancesScopedList", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "[Output Only] List of instances contained in this scope.", + "items": { + "$ref": "Instance" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of instances when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "InstancesSetLabelsRequest": { + "id": "InstancesSetLabelsRequest", + "type": "object", + "properties": { + "labelFingerprint": { + "type": "string", + "description": "Fingerprint of the previous set of labels for this resource, used to prevent conflicts. Provide the latest fingerprint value when making a request to add or change labels.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "A list of labels to apply for this instance. Changing instance labels will also change the instance tags.\n\nEach label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", + "additionalProperties": { + "type": "string" + } + } + } + }, + "InstancesSetMachineTypeRequest": { + "id": "InstancesSetMachineTypeRequest", + "type": "object", + "properties": { + "machineType": { + "type": "string", + "description": "Full or partial URL of the machine type resource. See Machine Types for a full list of machine types. For example: zones/us-central1-f/machineTypes/n1-standard-1" + } + } + }, + "InstancesSetServiceAccountRequest": { + "id": "InstancesSetServiceAccountRequest", + "type": "object", + "properties": { + "email": { + "type": "string", + "description": "Email address of the service account." + }, + "scopes": { + "type": "array", + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + } + } + } + }, + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "type": "object", + "properties": { + "disks": { + "type": "array", + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + } + }, + "instanceEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with an instance that is protected with a customer-supplied encryption key.\n\nIf the instance you are starting is protected with a customer-supplied encryption key, the correct key must be provided otherwise the instance start will not succeed." + } + } + }, + "License": { + "id": "License", + "type": "object", + "description": "A license resource.", + "properties": { + "chargesUseFee": { + "type": "boolean", + "description": "[Output Only] If true, the customer will be charged license fee for running software that contains this license on an instance." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#license for licenses.", + "default": "compute#license" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource. The name is 1-63 characters long and complies with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.images.insert" + ] + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "LogConfig": { + "id": "LogConfig", + "type": "object", + "description": "Specifies what kind of log the caller must write", + "properties": { + "counter": { + "$ref": "LogConfigCounterOptions", + "description": "Counter options." + } + } + }, + "LogConfigCounterOptions": { + "id": "LogConfigCounterOptions", + "type": "object", + "description": "Options for counters", + "properties": { + "field": { + "type": "string", + "description": "The field value to attribute." + }, + "metric": { + "type": "string", + "description": "The metric to update." + } + } + }, + "MachineType": { + "id": "MachineType", + "type": "object", + "description": "A Machine Type resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this machine type." + }, + "description": { + "type": "string", + "description": "[Output Only] An optional textual description of the resource." + }, + "guestCpus": { + "type": "integer", + "description": "[Output Only] The number of virtual CPUs that are available to the instance.", + "format": "int32" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "isSharedCpu": { + "type": "boolean", + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." + }, + "kind": { + "type": "string", + "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", + "default": "compute#machineType" + }, + "maximumPersistentDisks": { + "type": "integer", + "description": "[Output Only] Maximum persistent disks allowed.", + "format": "int32" + }, + "maximumPersistentDisksSizeGb": { + "type": "string", + "description": "[Output Only] Maximum total persistent disks size (GB) allowed.", + "format": "int64" + }, + "memoryMb": { + "type": "integer", + "description": "[Output Only] The amount of physical memory available to the instance, defined in MB.", + "format": "int32" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "zone": { + "type": "string", + "description": "[Output Only] The name of the zone where the machine type resides, such as us-central1-a." + } + } + }, + "MachineTypeAggregatedList": { + "id": "MachineTypeAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped machine type lists.", + "additionalProperties": { + "$ref": "MachineTypesScopedList", + "description": "[Output Only] Name of the scope containing this set of machine types." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#machineTypeAggregatedList for aggregated lists of machine types.", + "default": "compute#machineTypeAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "MachineTypeList": { + "id": "MachineTypeList", + "type": "object", + "description": "Contains a list of machine types.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Machine Type resources.", + "items": { + "$ref": "MachineType" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#machineTypeList for lists of machine types.", + "default": "compute#machineTypeList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "MachineTypesScopedList": { + "id": "MachineTypesScopedList", + "type": "object", + "properties": { + "machineTypes": { + "type": "array", + "description": "[Output Only] List of machine types contained in this scope.", + "items": { + "$ref": "MachineType" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] An informational warning that appears when the machine types list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "ManagedInstance": { + "id": "ManagedInstance", + "type": "object", + "properties": { + "currentAction": { + "type": "string", + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", + "enum": [ + "ABANDONING", + "CREATING", + "CREATING_WITHOUT_RETRIES", + "DELETING", + "NONE", + "RECREATING", + "REFRESHING", + "RESTARTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "id": { + "type": "string", + "description": "[Output only] The unique identifier for this resource. This field is empty when instance does not exist.", + "format": "uint64" + }, + "instance": { + "type": "string", + "description": "[Output Only] The URL of the instance. The URL can exist even if the instance has not yet been created." + }, + "instanceStatus": { + "type": "string", + "description": "[Output Only] The status of the instance. This field is empty when the instance does not exist.", + "enum": [ + "PROVISIONING", + "RUNNING", + "STAGING", + "STOPPED", + "STOPPING", + "SUSPENDED", + "SUSPENDING", + "TERMINATED" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "instanceTemplate": { + "type": "string", + "description": "[Output Only] The intended template of the instance. This field is empty when current_action is one of { DELETING, ABANDONING }." + }, + "lastAttempt": { + "$ref": "ManagedInstanceLastAttempt", + "description": "[Output Only] Information about the last attempt to create or delete the instance." + }, + "standbyMode": { + "type": "string", + "description": "[Output Only] Standby mode of the instance. This field is non-empty iff the instance is a standby.", + "enum": [ + "DRAINED" + ], + "enumDescriptions": [ + "" + ] + }, + "tag": { + "type": "string", + "description": "[Output Only] Tag describing the version." + } + } + }, + "ManagedInstanceLastAttempt": { + "id": "ManagedInstanceLastAttempt", + "type": "object", + "properties": { + "errors": { + "type": "object", + "description": "[Output Only] Encountered errors during the last attempt to create or delete the instance.", + "properties": { + "errors": { + "type": "array", + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] The error type identifier for this error." + }, + "location": { + "type": "string", + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." + }, + "message": { + "type": "string", + "description": "[Output Only] An optional, human-readable error message." + } + } + } + } + } + } + } + }, + "Metadata": { + "id": "Metadata", + "type": "object", + "description": "A metadata key/value entry.", + "properties": { + "fingerprint": { + "type": "string", + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.", + "format": "byte" + }, + "items": { + "type": "array", + "description": "Array of key/value pairs. The total size of all keys and values must be less than 512 KB.", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "Key for the metadata entry. Keys must conform to the following regexp: [a-zA-Z0-9-_]+, and be less than 128 bytes in length. This is reflected as part of a URL in the metadata server. Additionally, to avoid ambiguity, keys must not conflict with any other metadata keys for the project.", + "pattern": "[a-zA-Z0-9-_]{1,128}", + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + } + }, + "value": { + "type": "string", + "description": "Value for the metadata entry. These are free-form strings, and only have meaning as interpreted by the image running in the instance. The only restriction placed on values is that their size must be less than or equal to 32768 bytes.", + "annotations": { + "required": [ + "compute.instances.insert", + "compute.projects.setCommonInstanceMetadata" + ] + } + } + } + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#metadata for metadata.", + "default": "compute#metadata" + } + } + }, + "NamedPort": { + "id": "NamedPort", + "type": "object", + "description": "The named port. For example: .", + "properties": { + "name": { + "type": "string", + "description": "The name for this named port. The name must be 1-63 characters long, and comply with RFC1035." + }, + "port": { + "type": "integer", + "description": "The port number, which can be a value between 1 and 65535.", + "format": "int32" + } + } + }, + "Network": { + "id": "Network", + "type": "object", + "description": "Represents a Network resource. Read Networks and Firewalls for more information.", + "properties": { + "IPv4Range": { + "type": "string", + "description": "The range of internal addresses that are legal on this network. This range is a CIDR specification, for example: 192.168.0.0/16. Provided by the client when the network is created.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}/[0-9]{1,2}" + }, + "autoCreateSubnetworks": { + "type": "boolean", + "description": "When set to true, the network is created in \"auto subnet mode\". When set to false, the network is in \"custom subnet mode\".\n\nIn \"auto subnet mode\", a newly created network is assigned the default CIDR of 10.128.0.0/9 and it automatically creates one subnetwork per region." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "gatewayIPv4": { + "type": "string", + "description": "A gateway address for default routing to other networks. This value is read only and is selected by the Google Compute Engine, typically as the first usable address in the IPv4Range.", + "pattern": "[0-9]{1,3}(?:\\.[0-9]{1,3}){3}" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#network for networks.", + "default": "compute#network" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.networks.insert" + ] + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "subnetworks": { + "type": "array", + "description": "[Output Only] Server-defined fully-qualified URLs for all subnetworks in this network.", + "items": { + "type": "string" + } + } + } + }, + "NetworkInterface": { + "id": "NetworkInterface", + "type": "object", + "description": "A network interface resource attached to an instance.", + "properties": { + "accessConfigs": { + "type": "array", + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "items": { + "$ref": "AccessConfig" + } + }, + "name": { + "type": "string", + "description": "[Output Only] The name of the network interface, generated by the server. For network devices, these are eth0, eth1, etc." + }, + "network": { + "type": "string", + "description": "URL of the network resource for this instance. This is required for creating an instance but optional when creating a firewall rule. If not specified when creating a firewall rule, the default network is used:\n\nglobal/networks/default \n\nIf you specify this property, you can specify the network as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/global/networks/network \n- projects/project/global/networks/network \n- global/networks/default", + "annotations": { + "required": [ + "compute.instances.insert" + ] + } + }, + "networkIP": { + "type": "string", + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." + }, + "subnetwork": { + "type": "string", + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" + } + } + }, + "NetworkList": { + "id": "NetworkList", + "type": "object", + "description": "Contains a list of networks.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Network resources.", + "items": { + "$ref": "Network" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#networkList for lists of networks.", + "default": "compute#networkList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource ." + } + } + }, + "Operation": { + "id": "Operation", + "type": "object", + "description": "An Operation resource, used to manage asynchronous API requests.", + "properties": { + "clientOperationId": { + "type": "string", + "description": "[Output Only] Reserved for future use." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "[Output Only] A textual description of the operation, which is set when the operation is created." + }, + "endTime": { + "type": "string", + "description": "[Output Only] The time that this operation was completed. This value is in RFC3339 text format." + }, + "error": { + "type": "object", + "description": "[Output Only] If errors are generated during processing of the operation, this field will be populated.", + "properties": { + "errors": { + "type": "array", + "description": "[Output Only] The array of errors encountered while processing this operation.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] The error type identifier for this error." + }, + "location": { + "type": "string", + "description": "[Output Only] Indicates the field in the request that caused the error. This property is optional." + }, + "message": { + "type": "string", + "description": "[Output Only] An optional, human-readable error message." + } + } + } + } + } + }, + "httpErrorMessage": { + "type": "string", + "description": "[Output Only] If the operation fails, this field contains the HTTP error message that was returned, such as NOT FOUND." + }, + "httpErrorStatusCode": { + "type": "integer", + "description": "[Output Only] If the operation fails, this field contains the HTTP error status code that was returned. For example, a 404 means the resource was not found.", + "format": "int32" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "insertTime": { + "type": "string", + "description": "[Output Only] The time that this operation was requested. This value is in RFC3339 text format." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#operation for Operation resources.", + "default": "compute#operation" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource." + }, + "operationType": { + "type": "string", + "description": "[Output Only] The type of operation, such as insert, update, or delete, and so on." + }, + "progress": { + "type": "integer", + "description": "[Output Only] An optional progress indicator that ranges from 0 to 100. There is no requirement that this be linear or support any granularity of operations. This should not be used to guess when the operation will be complete. This number should monotonically increase as the operation progresses.", + "format": "int32" + }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the operation resides. Only available when performing regional operations." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "startTime": { + "type": "string", + "description": "[Output Only] The time that this operation was started by the server. This value is in RFC3339 text format." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the operation, which can be one of the following: PENDING, RUNNING, or DONE.", + "enum": [ + "DONE", + "PENDING", + "RUNNING" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "statusMessage": { + "type": "string", + "description": "[Output Only] An optional textual description of the current status of the operation." + }, + "targetId": { + "type": "string", + "description": "[Output Only] The unique target ID, which identifies a specific incarnation of the target resource.", + "format": "uint64" + }, + "targetLink": { + "type": "string", + "description": "[Output Only] The URL of the resource that the operation modifies." + }, + "user": { + "type": "string", + "description": "[Output Only] User who requested the operation, for example: user@example.com." + }, + "warnings": { + "type": "array", + "description": "[Output Only] If warning messages are generated during processing of the operation, this field will be populated.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + }, + "zone": { + "type": "string", + "description": "[Output Only] The URL of the zone where the operation resides. Only available when performing per-zone operations." + } + } + }, + "OperationAggregatedList": { + "id": "OperationAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped operation lists.", + "additionalProperties": { + "$ref": "OperationsScopedList", + "description": "[Output Only] Name of the scope containing this set of operations." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#operationAggregatedList for aggregated lists of operations.", + "default": "compute#operationAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "OperationList": { + "id": "OperationList", + "type": "object", + "description": "Contains a list of Operation resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Operation resources.", + "items": { + "$ref": "Operation" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#operations for Operations resource.", + "default": "compute#operationList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "OperationsScopedList": { + "id": "OperationsScopedList", + "type": "object", + "properties": { + "operations": { + "type": "array", + "description": "[Output Only] List of operations contained in this scope.", + "items": { + "$ref": "Operation" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of operations when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "PathMatcher": { + "id": "PathMatcher", + "type": "object", + "description": "A matcher for the path portion of the URL. The BackendService from the longest-matched rule will serve the URL. If no rule was matched, the default service will be used.", + "properties": { + "defaultService": { + "type": "string", + "description": "The full or partial URL to the BackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL's path portion. For example, the following are all valid URLs to a BackendService resource: \n- https://www.googleapis.com/compute/v1/projects/project/global/backendServices/backendService \n- compute/v1/projects/project/global/backendServices/backendService \n- global/backendServices/backendService" + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "name": { + "type": "string", + "description": "The name to which this PathMatcher is referred by the HostRule." + }, + "pathRules": { + "type": "array", + "description": "The list of path rules.", + "items": { + "$ref": "PathRule" + } + } + } + }, + "PathRule": { + "id": "PathRule", + "type": "object", + "description": "A path-matching rule for a URL. If matched, will use the specified BackendService to handle the traffic arriving at this URL.", + "properties": { + "paths": { + "type": "array", + "description": "The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.", + "items": { + "type": "string" + } + }, + "service": { + "type": "string", + "description": "The URL of the BackendService resource if this rule is matched." + } + } + }, + "Policy": { + "id": "Policy", + "type": "object", + "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources.\n\n\n\nA `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM.\n\n**Example**\n\n{ \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] }\n\nFor a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", + "properties": { + "auditConfigs": { + "type": "array", + "description": "Specifies audit logging configs for \"data access\". \"data access\": generally refers to data reads/writes and admin reads. \"admin activity\": generally refers to admin writes.\n\nNote: `AuditConfig` doesn't apply to \"admin activity\", which always enables audit logging.", + "items": { + "$ref": "AuditConfig" + } + }, + "bindings": { + "type": "array", + "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", + "items": { + "$ref": "Binding" + } + }, + "etag": { + "type": "string", + "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy.\n\nIf no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", + "format": "byte" + }, + "iamOwned": { + "type": "boolean", + "description": "" + }, + "rules": { + "type": "array", + "description": "If more than one rule is specified, the rules are applied in the following manner: - All matching LOG rules are always applied. - If any DENY/DENY_WITH_LOG rule matches, permission is denied. Logging will be applied if one or more matching rule requires logging. - Otherwise, if any ALLOW/ALLOW_WITH_LOG rule matches, permission is granted. Logging will be applied if one or more matching rule requires logging. - Otherwise, if no rule applies, permission is denied.", + "items": { + "$ref": "Rule" + } + }, + "version": { + "type": "integer", + "description": "Version of the `Policy`. The default version is 0.", + "format": "int32" + } + } + }, + "Project": { + "id": "Project", + "type": "object", + "description": "A Project resource. Projects can only be created in the Google Cloud Platform Console. Unless marked otherwise, values can only be modified in the console.", + "properties": { + "commonInstanceMetadata": { + "$ref": "Metadata", + "description": "Metadata key/value pairs available to all instances contained in this project. See Custom metadata for more information." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "defaultServiceAccount": { + "type": "string", + "description": "[Output Only] Default service account used by VMs running in this project." + }, + "description": { + "type": "string", + "description": "An optional textual description of the resource." + }, + "enabledFeatures": { + "type": "array", + "description": "Restricted features enabled for use on this project.", + "items": { + "type": "string" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server. This is not the project ID, and is just a unique ID used by Compute Engine to identify resources.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#project for projects.", + "default": "compute#project" + }, + "name": { + "type": "string", + "description": "The project ID. For example: my-example-project. Use the project ID to make requests to Compute Engine." + }, + "quotas": { + "type": "array", + "description": "[Output Only] Quotas assigned to this project.", + "items": { + "$ref": "Quota" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "usageExportLocation": { + "$ref": "UsageExportLocation", + "description": "The naming prefix for daily usage reports and the Google Cloud Storage bucket where they are stored." + }, + "xpnProjectStatus": { + "type": "string", + "description": "[Output Only] The role this project has in a Cross Project Network (XPN) configuration. Currently only HOST projects are differentiated.", + "enum": [ + "HOST", + "UNSPECIFIED_XPN_PROJECT_STATUS" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "ProjectsDisableXpnResourceRequest": { + "id": "ProjectsDisableXpnResourceRequest", + "type": "object", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "XPN resource ID." + } + } + }, + "ProjectsEnableXpnResourceRequest": { + "id": "ProjectsEnableXpnResourceRequest", + "type": "object", + "properties": { + "xpnResource": { + "$ref": "XpnResourceId", + "description": "XPN resource ID." + } + } + }, + "ProjectsGetXpnResources": { + "id": "ProjectsGetXpnResources", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#projectsGetXpnResources for lists of XPN resources.", + "default": "compute#projectsGetXpnResources" + }, + "resources": { + "type": "array", + "description": "XPN resources attached to this project as their XPN host.", + "items": { + "$ref": "XpnResourceId" + } + } + } + }, + "ProjectsListXpnHostsRequest": { + "id": "ProjectsListXpnHostsRequest", + "type": "object", + "properties": { + "organization": { + "type": "string", + "description": "Optional organization ID managed by Cloud Resource Manager, for which to list XPN host projects. If not specified, the organization will be inferred from the project." + } + } + }, + "Quota": { + "id": "Quota", + "type": "object", + "description": "A quotas entry.", + "properties": { + "limit": { + "type": "number", + "description": "[Output Only] Quota limit for this metric.", + "format": "double" + }, + "metric": { + "type": "string", + "description": "[Output Only] Name of the quota metric.", + "enum": [ + "AUTOSCALERS", + "BACKEND_BUCKETS", + "BACKEND_SERVICES", + "CPUS", + "DISKS_TOTAL_GB", + "FIREWALLS", + "FORWARDING_RULES", + "GPUS", + "HEALTH_CHECKS", + "IMAGES", + "INSTANCES", + "INSTANCE_GROUPS", + "INSTANCE_GROUP_MANAGERS", + "INSTANCE_TEMPLATES", + "IN_USE_ADDRESSES", + "LOCAL_SSD_TOTAL_GB", + "NETWORKS", + "PREEMPTIBLE_CPUS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "ROUTERS", + "ROUTES", + "SNAPSHOTS", + "SSD_TOTAL_GB", + "SSL_CERTIFICATES", + "STATIC_ADDRESSES", + "SUBNETWORKS", + "TARGET_HTTPS_PROXIES", + "TARGET_HTTP_PROXIES", + "TARGET_INSTANCES", + "TARGET_POOLS", + "TARGET_SSL_PROXIES", + "TARGET_VPN_GATEWAYS", + "URL_MAPS", + "VPN_TUNNELS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "usage": { + "type": "number", + "description": "[Output Only] Current usage of this metric.", + "format": "double" + } + } + }, + "Region": { + "id": "Region", + "type": "object", + "description": "Region resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this region." + }, + "description": { + "type": "string", + "description": "[Output Only] Textual description of the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#region for regions.", + "default": "compute#region" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource." + }, + "quotas": { + "type": "array", + "description": "[Output Only] Quotas assigned to this region.", + "items": { + "$ref": "Quota" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] Status of the region, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "zones": { + "type": "array", + "description": "[Output Only] A list of zones available in this region, in the form of resource URLs.", + "items": { + "type": "string" + } + } + } + }, + "RegionAutoscalerList": { + "id": "RegionAutoscalerList", + "type": "object", + "description": "Contains a list of autoscalers.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of autoscalers.", + "items": { + "$ref": "Autoscaler" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#regionAutoscalerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RegionDiskList": { + "id": "RegionDiskList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of persistent disks.", + "items": { + "$ref": "Disk" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#regionDiskList for lists of region disks.", + "default": "compute#regionDiskList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RegionDiskTypeList": { + "id": "RegionDiskTypeList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Disk Type resources.", + "items": { + "$ref": "DiskType" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#regionDiskTypeList for region disk types.", + "default": "compute#regionDiskTypeList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RegionDisksResizeRequest": { + "id": "RegionDisksResizeRequest", + "type": "object", + "properties": { + "sizeGb": { + "type": "string", + "description": "The new size of the regional persistent disk, which is specified in GB.", + "format": "int64" + } + } + }, + "RegionInstanceGroupList": { + "id": "RegionInstanceGroupList", + "type": "object", + "description": "Contains a list of InstanceGroup resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + } + }, + "kind": { + "type": "string", + "description": "The resource type.", + "default": "compute#regionInstanceGroupList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "RegionInstanceGroupManagerList": { + "id": "RegionInstanceGroupManagerList", + "type": "object", + "description": "Contains a list of managed instance groups.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of managed instance groups.", + "items": { + "$ref": "InstanceGroupManager" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", + "default": "compute#regionInstanceGroupManagerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output only] The URL for this resource type. The server generates this URL." + } + } + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The names of one or more instances to abandon.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The names of one or more instances to delete.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", + "type": "object", + "properties": { + "managedInstances": { + "type": "array", + "description": "List of managed instances.", + "items": { + "$ref": "ManagedInstance" + } + } + } + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The URL for one or more instances to recreate.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersSetAutoHealingRequest": { + "id": "RegionInstanceGroupManagersSetAutoHealingRequest", + "type": "object", + "properties": { + "autoHealingPolicies": { + "type": "array", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + } + } + } + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", + "format": "byte" + }, + "targetPools": { + "type": "array", + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "type": "object", + "properties": { + "instanceTemplate": { + "type": "string", + "description": "URL of the InstanceTemplate resource from which all new instances will be created." + } + } + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "A list of instances and any named ports that are assigned to those instances.", + "items": { + "$ref": "InstanceWithNamedPorts" + } + }, + "kind": { + "type": "string", + "description": "The resource type.", + "default": "compute#regionInstanceGroupsListInstances" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "type": "object", + "properties": { + "instanceState": { + "type": "string", + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "portName": { + "type": "string", + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + } + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte" + }, + "namedPorts": { + "type": "array", + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + } + } + } + }, + "RegionList": { + "id": "RegionList", + "type": "object", + "description": "Contains a list of region resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Region resources.", + "items": { + "$ref": "Region" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#regionList for lists of regions.", + "default": "compute#regionList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RegionSetLabelsRequest": { + "id": "RegionSetLabelsRequest", + "type": "object", + "properties": { + "labelFingerprint": { + "type": "string", + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "The labels to set for this resource.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "ResourceGroupReference": { + "id": "ResourceGroupReference", + "type": "object", + "properties": { + "group": { + "type": "string", + "description": "A URI referencing one of the resource views listed in the backend service." + } + } + }, + "Route": { + "id": "Route", + "type": "object", + "description": "Represents a Route resource. A route specifies how certain packets should be handled by the network. Routes are associated with instances by tags and the set of routes for a particular instance is called its routing table.\n\nFor each packet leaving a instance, the system searches that instance's routing table for a single best matching route. Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the nextHop field of the winning route - either to another instance destination, a instance gateway or a Google Compute Engine-operated gateway.\n\nPackets that do not match any route in the sending instance's routing table are dropped.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "destRange": { + "type": "string", + "description": "The destination range of outgoing packets that this route applies to.", + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of this resource. Always compute#routes for Route resources.", + "default": "compute#route" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "network": { + "type": "string", + "description": "Fully-qualified URL of the network that this route applies to.", + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "nextHopGateway": { + "type": "string", + "description": "The URL to a gateway that should handle matching packets. You can only specify the internet gateway using a full or partial valid URL: projects/\u003cproject-id\u003e/global/gateways/default-internet-gateway" + }, + "nextHopInstance": { + "type": "string", + "description": "The URL to an instance that should handle matching packets. You can specify this as a full or partial URL. For example:\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/" + }, + "nextHopIp": { + "type": "string", + "description": "The network IP address of an instance that should handle matching packets." + }, + "nextHopNetwork": { + "type": "string", + "description": "The URL of the local network if it should handle matching packets." + }, + "nextHopVpnTunnel": { + "type": "string", + "description": "The URL to a VpnTunnel that should handle matching packets." + }, + "priority": { + "type": "integer", + "description": "The priority of this route. Priority is used to break ties in cases where there is more than one matching route of equal prefix length. In the case of two routes with equal prefix length, the one with the lowest-numbered priority value wins. Default value is 1000. Valid range is 0 through 65535.", + "format": "uint32", + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined fully-qualified URL for this resource." + }, + "tags": { + "type": "array", + "description": "A list of instance tags to which this route applies.", + "items": { + "type": "string" + }, + "annotations": { + "required": [ + "compute.routes.insert" + ] + } + }, + "warnings": { + "type": "array", + "description": "[Output Only] If potential misconfigurations are detected for this route, this field will be populated with warning messages.", + "items": { + "type": "object", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + } + }, + "RouteList": { + "id": "RouteList", + "type": "object", + "description": "Contains a list of Route resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Route resources.", + "items": { + "$ref": "Route" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#routeList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "Router": { + "id": "Router", + "type": "object", + "description": "Router resource.", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "bgpPeers": { + "type": "array", + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", + "items": { + "$ref": "RouterBgpPeer" + } + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "interfaces": { + "type": "array", + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel) or IP address and IP address range (e.g. ipRange).", + "items": { + "$ref": "RouterInterface" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "default": "compute#router" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.routers.insert" + ] + } + }, + "network": { + "type": "string", + "description": "URI of the network to which this router belongs.", + "annotations": { + "required": [ + "compute.routers.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URI of the region where the router resides." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RouterAggregatedList": { + "id": "RouterAggregatedList", + "type": "object", + "description": "Contains a list of routers.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped router lists.", + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#routerAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RouterBgp": { + "id": "RouterBgp", + "type": "object", + "properties": { + "asn": { + "type": "integer", + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "format": "uint32" + } + } + }, + "RouterBgpPeer": { + "id": "RouterBgpPeer", + "type": "object", + "properties": { + "advertisedRoutePriority": { + "type": "integer", + "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", + "format": "uint32" + }, + "interfaceName": { + "type": "string", + "description": "Name of the interface the BGP peer is associated with." + }, + "ipAddress": { + "type": "string", + "description": "IP address of the interface inside Google Cloud Platform." + }, + "name": { + "type": "string", + "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "peerAsn": { + "type": "integer", + "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", + "format": "uint32" + }, + "peerIpAddress": { + "type": "string", + "description": "IP address of the BGP interface outside Google cloud." + } + } + }, + "RouterInterface": { + "id": "RouterInterface", + "type": "object", + "properties": { + "ipRange": { + "type": "string", + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." + }, + "linkedVpnTunnel": { + "type": "string", + "description": "URI of linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource." + }, + "name": { + "type": "string", + "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + } + }, + "RouterList": { + "id": "RouterList", + "type": "object", + "description": "Contains a list of Router resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of Router resources.", + "items": { + "$ref": "Router" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "default": "compute#routerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RouterStatus": { + "id": "RouterStatus", + "type": "object", + "properties": { + "bestRoutes": { + "type": "array", + "description": "Best routes for this router's network.", + "items": { + "$ref": "Route" + } + }, + "bgpPeerStatus": { + "type": "array", + "items": { + "$ref": "RouterStatusBgpPeerStatus" + } + }, + "network": { + "type": "string", + "description": "URI of the network to which this router belongs." + } + } + }, + "RouterStatusBgpPeerStatus": { + "id": "RouterStatusBgpPeerStatus", + "type": "object", + "properties": { + "advertisedRoutes": { + "type": "array", + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + } + }, + "ipAddress": { + "type": "string", + "description": "IP address of the local BGP interface." + }, + "linkedVpnTunnel": { + "type": "string", + "description": "URL of the VPN tunnel that this BGP peer controls." + }, + "name": { + "type": "string", + "description": "Name of this BGP peer. Unique within the Routers resource." + }, + "numLearnedRoutes": { + "type": "integer", + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32" + }, + "peerIpAddress": { + "type": "string", + "description": "IP address of the remote BGP interface." + }, + "state": { + "type": "string", + "description": "BGP state as specified in RFC1771." + }, + "status": { + "type": "string", + "description": "Status of the BGP peer: {UP, DOWN}", + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "uptime": { + "type": "string", + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" + }, + "uptimeSeconds": { + "type": "string", + "description": "Time this session has been up, in seconds. Format: 145" + } + } + }, + "RouterStatusResponse": { + "id": "RouterStatusResponse", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#routerStatusResponse" + }, + "result": { + "$ref": "RouterStatus" + } + } + }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "type": "object", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + } + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "type": "object", + "properties": { + "routers": { + "type": "array", + "description": "List of routers contained in this scope.", + "items": { + "$ref": "Router" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of routers when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "Rule": { + "id": "Rule", + "type": "object", + "description": "A rule to be applied in a Policy.", + "properties": { + "action": { + "type": "string", + "description": "Required", + "enum": [ + "ALLOW", + "ALLOW_WITH_LOG", + "DENY", + "DENY_WITH_LOG", + "LOG", + "NO_ACTION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "conditions": { + "type": "array", + "description": "Additional restrictions that must be met", + "items": { + "$ref": "Condition" + } + }, + "description": { + "type": "string", + "description": "Human-readable description of the rule." + }, + "ins": { + "type": "array", + "description": "If one or more 'in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in at least one of these entries.", + "items": { + "type": "string" + } + }, + "logConfigs": { + "type": "array", + "description": "The config returned to callers of tech.iam.IAM.CheckPolicy for any entries that match the LOG action.", + "items": { + "$ref": "LogConfig" + } + }, + "notIns": { + "type": "array", + "description": "If one or more 'not_in' clauses are specified, the rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in none of the entries.", + "items": { + "type": "string" + } + }, + "permissions": { + "type": "array", + "description": "A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets.*') matches all verbs.", + "items": { + "type": "string" + } + } + } + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, + "Scheduling": { + "id": "Scheduling", + "type": "object", + "description": "Sets the scheduling options for an Instance.", + "properties": { + "automaticRestart": { + "type": "boolean", + "description": "Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). You can only set the automatic restart option for standard instances. Preemptible instances cannot be automatically restarted." + }, + "onHostMaintenance": { + "type": "string", + "description": "Defines the maintenance behavior for this instance. For standard instances, the default behavior is MIGRATE. For preemptible instances, the default and only possible behavior is TERMINATE. For more information, see Setting Instance Scheduling Options.", + "enum": [ + "MIGRATE", + "TERMINATE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "preemptible": { + "type": "boolean", + "description": "Whether the instance is preemptible." + } + } + }, + "SerialPortOutput": { + "id": "SerialPortOutput", + "type": "object", + "description": "An instance's serial console output.", + "properties": { + "contents": { + "type": "string", + "description": "[Output Only] The contents of the console output." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#serialPortOutput for serial port output.", + "default": "compute#serialPortOutput" + }, + "next": { + "type": "string", + "description": "[Output Only] The position of the next byte of content from the serial console output. Use this value in the next request as the start parameter.", + "format": "int64" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "start": { + "type": "string", + "description": "[Output Only] The starting byte position of the output that was returned. This should match the start parameter sent with the request. If the serial console output exceeds the size of the buffer, older output will be overwritten by newer content and the start values will be mismatched.", + "format": "int64" + } + } + }, + "ServiceAccount": { + "id": "ServiceAccount", + "type": "object", + "description": "A service account.", + "properties": { + "email": { + "type": "string", + "description": "Email address of the service account." + }, + "scopes": { + "type": "array", + "description": "The list of scopes to be made available for this service account.", + "items": { + "type": "string" + } + } + } + }, + "Snapshot": { + "id": "Snapshot", + "type": "object", + "description": "A persistent disk snapshot resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "diskSizeGb": { + "type": "string", + "description": "[Output Only] Size of the snapshot, specified in GB.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#snapshot for Snapshot resources.", + "default": "compute#snapshot" + }, + "labelFingerprint": { + "type": "string", + "description": "A fingerprint for the labels being applied to this snapshot, which is essentially a hash of the labels set used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels.\n\nTo see the latest fingerprint, make a get() request to retrieve a snapshot.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, + "licenses": { + "type": "array", + "description": "[Output Only] A list of public visible licenses that apply to this snapshot. This can be because the original image had licenses attached (such as a Windows image).", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "snapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + }, + "sourceDisk": { + "type": "string", + "description": "[Output Only] The source disk used to create this snapshot." + }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, + "sourceDiskId": { + "type": "string", + "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the snapshot. This can be CREATING, DELETING, FAILED, READY, or UPLOADING.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY", + "UPLOADING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "storageBytes": { + "type": "string", + "description": "[Output Only] A size of the the storage used by the snapshot. As snapshots share storage, this number is expected to change with snapshot creation/deletion.", + "format": "int64" + }, + "storageBytesStatus": { + "type": "string", + "description": "[Output Only] An indicator whether storageBytes is in a stable state or it is being adjusted as a result of shared storage reallocation. This status can either be UPDATING, meaning the size of the snapshot is being updated, or UP_TO_DATE, meaning the size of the snapshot is up-to-date.", + "enum": [ + "UPDATING", + "UP_TO_DATE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "SnapshotList": { + "id": "SnapshotList", + "type": "object", + "description": "Contains a list of Snapshot resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Snapshot resources.", + "items": { + "$ref": "Snapshot" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#snapshotList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "SslCertificate": { + "id": "SslCertificate", + "type": "object", + "description": "An SslCertificate resource. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user.", + "properties": { + "certificate": { + "type": "string", + "description": "A local certificate file. The certificate must be in PEM format. The certificate chain must be no greater than 5 certs long. The chain must include at least one intermediate cert." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#sslCertificate for SSL certificates.", + "default": "compute#sslCertificate" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "privateKey": { + "type": "string", + "description": "A write-only private key in PEM format. Only insert RPCs will include this field." + }, + "selfLink": { + "type": "string", + "description": "[Output only] Server-defined URL for the resource." + } + } + }, + "SslCertificateList": { + "id": "SslCertificateList", + "type": "object", + "description": "Contains a list of SslCertificate resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "A list of SslCertificate resources.", + "items": { + "$ref": "SslCertificate" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#sslCertificateList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "Subnetwork": { + "id": "Subnetwork", + "type": "object", + "description": "A Subnetwork resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "gatewayAddress": { + "type": "string", + "description": "[Output Only] The gateway address for default routes to reach destination addresses outside this subnetwork." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "ipCidrRange": { + "type": "string", + "description": "The range of internal addresses that are owned by this subnetwork. Provide this property when you create the subnetwork. For example, 10.0.0.0/8 or 192.168.0.0/16. Ranges must be unique and non-overlapping within a network." + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#subnetwork for Subnetwork resources.", + "default": "compute#subnetwork" + }, + "name": { + "type": "string", + "description": "The name of the resource, provided by the client when initially creating the resource. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "network": { + "type": "string", + "description": "The URL of the network to which this subnetwork belongs, provided by the client when initially creating the subnetwork. Only networks that are in the distributed mode can have subnetworks." + }, + "privateIpGoogleAccess": { + "type": "boolean", + "description": "Whether the VMs in this subnet can access Google services without assigned external IP addresses." + }, + "region": { + "type": "string", + "description": "URL of the region where the Subnetwork resides." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "SubnetworkAggregatedList": { + "id": "SubnetworkAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output] A map of scoped Subnetwork lists.", + "additionalProperties": { + "$ref": "SubnetworksScopedList", + "description": "Name of the scope containing this set of Subnetworks." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#subnetworkAggregatedList for aggregated lists of subnetworks.", + "default": "compute#subnetworkAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "SubnetworkList": { + "id": "SubnetworkList", + "type": "object", + "description": "Contains a list of Subnetwork resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "The Subnetwork resources.", + "items": { + "$ref": "Subnetwork" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#subnetworkList for lists of subnetworks.", + "default": "compute#subnetworkList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "type": "object", + "properties": { + "ipCidrRange": { + "type": "string", + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update." + } + } + }, + "SubnetworksScopedList": { + "id": "SubnetworksScopedList", + "type": "object", + "properties": { + "subnetworks": { + "type": "array", + "description": "List of subnetworks contained in this scope.", + "items": { + "$ref": "Subnetwork" + } + }, + "warning": { + "type": "object", + "description": "An informational warning that appears when the list of addresses is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, + "Tags": { + "id": "Tags", + "type": "object", + "description": "A set of instance tags.", + "properties": { + "fingerprint": { + "type": "string", + "description": "Specifies a fingerprint for this request, which is essentially a hash of the metadata's contents and used for optimistic locking. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update metadata. You must always provide an up-to-date fingerprint hash in order to update or change metadata.\n\nTo see the latest fingerprint, make get() request to the instance.", + "format": "byte" + }, + "items": { + "type": "array", + "description": "An array of tags. Each tag must be 1-63 characters long, and comply with RFC1035.", + "items": { + "type": "string" + } + } + } + }, + "TargetHttpProxy": { + "id": "TargetHttpProxy", + "type": "object", + "description": "A TargetHttpProxy resource. This resource defines an HTTP proxy.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetHttpProxy for target HTTP proxies.", + "default": "compute#targetHttpProxy" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "urlMap": { + "type": "string", + "description": "URL to the UrlMap resource that defines the mapping from URL to the BackendService." + } + } + }, + "TargetHttpProxyList": { + "id": "TargetHttpProxyList", + "type": "object", + "description": "A list of TargetHttpProxy resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetHttpProxy resources.", + "items": { + "$ref": "TargetHttpProxy" + } + }, + "kind": { + "type": "string", + "description": "Type of resource. Always compute#targetHttpProxyList for lists of target HTTP proxies.", + "default": "compute#targetHttpProxyList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetHttpsProxiesSetSslCertificatesRequest": { + "id": "TargetHttpsProxiesSetSslCertificatesRequest", + "type": "object", + "properties": { + "sslCertificates": { + "type": "array", + "description": "New set of SslCertificate resources to associate with this TargetHttpsProxy resource. Currently exactly one SslCertificate resource must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetHttpsProxy": { + "id": "TargetHttpsProxy", + "type": "object", + "description": "A TargetHttpsProxy resource. This resource defines an HTTPS proxy.", + "properties": { + "clientSslPolicy": { + "type": "string", + "description": "URL to ClientSslPolicy resource which controls the set of allowed SSL versions and ciphers." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetHttpsProxy for target HTTPS proxies.", + "default": "compute#targetHttpsProxy" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sslCertificates": { + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections between users and the load balancer. Currently, exactly one SSL certificate must be specified.", + "items": { + "type": "string" + } + }, + "urlMap": { + "type": "string", + "description": "A fully-qualified or valid partial URL to the UrlMap resource that defines the mapping from URL to the BackendService. For example, the following are all valid URLs for specifying a URL map: \n- https://www.googleapis.compute/v1/projects/project/global/urlMaps/url-map \n- projects/project/global/urlMaps/url-map \n- global/urlMaps/url-map" + } + } + }, + "TargetHttpsProxyList": { + "id": "TargetHttpsProxyList", + "type": "object", + "description": "Contains a list of TargetHttpsProxy resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetHttpsProxy resources.", + "items": { + "$ref": "TargetHttpsProxy" + } + }, + "kind": { + "type": "string", + "description": "Type of resource. Always compute#targetHttpsProxyList for lists of target HTTPS proxies.", + "default": "compute#targetHttpsProxyList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetInstance": { + "id": "TargetInstance", + "type": "object", + "description": "A TargetInstance resource. This resource defines an endpoint instance that terminates traffic of certain protocols.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "instance": { + "type": "string", + "description": "A URL to the virtual machine instance that handles traffic for this target instance. When creating a target instance, you can provide the fully-qualified URL or a valid partial URL to the desired virtual machine. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" + }, + "kind": { + "type": "string", + "description": "[Output Only] The type of the resource. Always compute#targetInstance for target instances.", + "default": "compute#targetInstance" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "natPolicy": { + "type": "string", + "description": "NAT option controlling how IPs are NAT'ed to the instance. Currently only NO_NAT (default value) is supported.", + "enum": [ + "NO_NAT" + ], + "enumDescriptions": [ + "" + ] + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "zone": { + "type": "string", + "description": "[Output Only] URL of the zone where the target instance resides." + } + } + }, + "TargetInstanceAggregatedList": { + "id": "TargetInstanceAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped target instance lists.", + "additionalProperties": { + "$ref": "TargetInstancesScopedList", + "description": "Name of the scope containing this set of target instances." + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetInstanceAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetInstanceList": { + "id": "TargetInstanceList", + "type": "object", + "description": "Contains a list of TargetInstance resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetInstance resources.", + "items": { + "$ref": "TargetInstance" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetInstanceList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetInstancesScopedList": { + "id": "TargetInstancesScopedList", + "type": "object", + "properties": { + "targetInstances": { + "type": "array", + "description": "List of target instances contained in this scope.", + "items": { + "$ref": "TargetInstance" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "TargetPool": { + "id": "TargetPool", + "type": "object", + "description": "A TargetPool resource. This resource defines a pool of instances, associated HttpHealthCheck resources, and the fallback target pool.", + "properties": { + "backupPool": { + "type": "string", + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool, and its failoverRatio field is properly set to a value between [0, 1].\n\nbackupPool and failoverRatio together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below failoverRatio, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio and backupPool are not set, or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "failoverRatio": { + "type": "number", + "description": "This field is applicable only when the containing target pool is serving a forwarding rule as the primary pool (i.e., not as a backup pool to some other target pool). The value of the field must be in [0, 1].\n\nIf set, backupPool must also be set. They together define the fallback behavior of the primary target pool: if the ratio of the healthy instances in the primary pool is at or below this number, traffic arriving at the load-balanced IP will be directed to the backup pool.\n\nIn case where failoverRatio is not set or all the instances in the backup pool are unhealthy, the traffic will be directed back to the primary pool in the \"force\" mode, where traffic will be spread to the healthy instances with the best effort, or to all instances when no instance is healthy.", + "format": "float" + }, + "healthChecks": { + "type": "array", + "description": "A list of URLs to the HttpHealthCheck resource. A member instance in this pool is considered healthy if and only if all specified health checks pass. An empty list means all member instances will be considered healthy at all times.", + "items": { + "type": "string" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "instances": { + "type": "array", + "description": "A list of resource URLs to the virtual machine instances serving this pool. They must live in zones contained in the same region as this pool.", + "items": { + "type": "string" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetPool for target pools.", + "default": "compute#targetPool" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the target pool resides." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sessionAffinity": { + "type": "string", + "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, + "TargetPoolAggregatedList": { + "id": "TargetPoolAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped target pool lists.", + "additionalProperties": { + "$ref": "TargetPoolsScopedList", + "description": "Name of the scope containing this set of target pools." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetPoolAggregatedList for aggregated lists of target pools.", + "default": "compute#targetPoolAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetPoolInstanceHealth": { + "id": "TargetPoolInstanceHealth", + "type": "object", + "properties": { + "healthStatus": { + "type": "array", + "items": { + "$ref": "HealthStatus" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetPoolInstanceHealth when checking the health of an instance.", + "default": "compute#targetPoolInstanceHealth" + } + } + }, + "TargetPoolList": { + "id": "TargetPoolList", + "type": "object", + "description": "Contains a list of TargetPool resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetPool resources.", + "items": { + "$ref": "TargetPool" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetPoolList for lists of target pools.", + "default": "compute#targetPoolList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetPoolsAddHealthCheckRequest": { + "id": "TargetPoolsAddHealthCheckRequest", + "type": "object", + "properties": { + "healthChecks": { + "type": "array", + "description": "A list of HttpHealthCheck resources to add to the target pool.", + "items": { + "$ref": "HealthCheckReference" + } + } + } + }, + "TargetPoolsAddInstanceRequest": { + "id": "TargetPoolsAddInstanceRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "A full or partial URL to an instance to add to this target pool. This can be a full or partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project-id/zones/zone/instances/instance-name \n- projects/project-id/zones/zone/instances/instance-name \n- zones/zone/instances/instance-name", + "items": { + "$ref": "InstanceReference" + } + } + } + }, + "TargetPoolsRemoveHealthCheckRequest": { + "id": "TargetPoolsRemoveHealthCheckRequest", + "type": "object", + "properties": { + "healthChecks": { + "type": "array", + "description": "Health check URL to be removed. This can be a full or valid partial URL. For example, the following are valid URLs: \n- https://www.googleapis.com/compute/beta/projects/project/global/httpHealthChecks/health-check \n- projects/project/global/httpHealthChecks/health-check \n- global/httpHealthChecks/health-check", + "items": { + "$ref": "HealthCheckReference" + } + } + } + }, + "TargetPoolsRemoveInstanceRequest": { + "id": "TargetPoolsRemoveInstanceRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "URLs of the instances to be removed from target pool.", + "items": { + "$ref": "InstanceReference" + } + } + } + }, + "TargetPoolsScopedList": { + "id": "TargetPoolsScopedList", + "type": "object", + "properties": { + "targetPools": { + "type": "array", + "description": "List of target pools contained in this scope.", + "items": { + "$ref": "TargetPool" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "TargetReference": { + "id": "TargetReference", + "type": "object", + "properties": { + "target": { + "type": "string" + } + } + }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "type": "object", + "properties": { + "service": { + "type": "string", + "description": "The URL of the new BackendService resource for the targetSslProxy." + } + } + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "type": "object", + "properties": { + "proxyHeader": { + "type": "string", + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "type": "object", + "properties": { + "sslCertificates": { + "type": "array", + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxy": { + "id": "TargetSslProxy", + "type": "object", + "description": "A TargetSslProxy resource. This resource defines an SSL proxy.", + "properties": { + "clientSslPolicy": { + "type": "string", + "description": "URL to ClientSslPolicy resource which controls the set of allowed SSL versions and ciphers." + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "default": "compute#targetSslProxy" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "service": { + "type": "string", + "description": "URL to the BackendService resource." + }, + "sslCertificates": { + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxyList": { + "id": "TargetSslProxyList", + "type": "object", + "description": "Contains a list of TargetSslProxy resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetSslProxyList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "TargetVpnGateway": { + "id": "TargetVpnGateway", + "type": "object", + "description": "Represents a Target VPN gateway resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "forwardingRules": { + "type": "array", + "description": "[Output Only] A list of URLs to the ForwardingRule resources. ForwardingRules are created using compute.forwardingRules.insert and associated to a VPN gateway.", + "items": { + "type": "string" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "default": "compute#targetVpnGateway" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + } + }, + "network": { + "type": "string", + "description": "URL of the network to which this VPN gateway is attached. Provided by the client when the VPN gateway is created.", + "annotations": { + "required": [ + "compute.targetVpnGateways.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the target VPN gateway resides." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the VPN gateway.", + "enum": [ + "CREATING", + "DELETING", + "FAILED", + "READY" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "tunnels": { + "type": "array", + "description": "[Output Only] A list of URLs to VpnTunnel resources. VpnTunnels are created using compute.vpntunnels.insert method and associated to a VPN gateway.", + "items": { + "type": "string" + } + } + } + }, + "TargetVpnGatewayAggregatedList": { + "id": "TargetVpnGatewayAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped target vpn gateway lists.", + "additionalProperties": { + "$ref": "TargetVpnGatewaysScopedList", + "description": "[Output Only] Name of the scope containing this set of target VPN gateways." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "default": "compute#targetVpnGatewayAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "TargetVpnGatewayList": { + "id": "TargetVpnGatewayList", + "type": "object", + "description": "Contains a list of TargetVpnGateway resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of TargetVpnGateway resources.", + "items": { + "$ref": "TargetVpnGateway" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#targetVpnGateway for target VPN gateways.", + "default": "compute#targetVpnGatewayList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "TargetVpnGatewaysScopedList": { + "id": "TargetVpnGatewaysScopedList", + "type": "object", + "properties": { + "targetVpnGateways": { + "type": "array", + "description": "[Output Only] List of target vpn gateways contained in this scope.", + "items": { + "$ref": "TargetVpnGateway" + } + }, + "warning": { + "type": "object", + "description": "[Output Only] Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "TestFailure": { + "id": "TestFailure", + "type": "object", + "properties": { + "actualService": { + "type": "string" + }, + "expectedService": { + "type": "string" + }, + "host": { + "type": "string" + }, + "path": { + "type": "string" + } + } + }, + "TestPermissionsRequest": { + "id": "TestPermissionsRequest", + "type": "object", + "properties": { + "permissions": { + "type": "array", + "description": "The set of permissions to check for the 'resource'. Permissions with wildcards (such as '*' or 'storage.*') are not allowed.", + "items": { + "type": "string" + } + } + } + }, + "TestPermissionsResponse": { + "id": "TestPermissionsResponse", + "type": "object", + "properties": { + "permissions": { + "type": "array", + "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", + "items": { + "type": "string" + } + } + } + }, + "UrlMap": { + "id": "UrlMap", + "type": "object", + "description": "A UrlMap resource. This resource defines the mapping from URL to the BackendService resource, based on the \"longest-match\" of the URL's host and path.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "defaultService": { + "type": "string", + "description": "The URL of the BackendService resource if none of the hostRules match." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "fingerprint": { + "type": "string", + "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a UrlMap. An up-to-date fingerprint must be provided in order to update the UrlMap.", + "format": "byte" + }, + "hostRules": { + "type": "array", + "description": "The list of HostRules to use against the URL.", + "items": { + "$ref": "HostRule" + } + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#urlMaps for url maps.", + "default": "compute#urlMap" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "pathMatchers": { + "type": "array", + "description": "The list of named PathMatchers to use against the URL.", + "items": { + "$ref": "PathMatcher" + } + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "tests": { + "type": "array", + "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", + "items": { + "$ref": "UrlMapTest" + } + } + } + }, + "UrlMapList": { + "id": "UrlMapList", + "type": "object", + "description": "Contains a list of UrlMap resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Set by the server." + }, + "items": { + "type": "array", + "description": "A list of UrlMap resources.", + "items": { + "$ref": "UrlMap" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#urlMapList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "UrlMapReference": { + "id": "UrlMapReference", + "type": "object", + "properties": { + "urlMap": { + "type": "string" + } + } + }, + "UrlMapTest": { + "id": "UrlMapTest", + "type": "object", + "description": "Message for the expected URL mappings.", + "properties": { + "description": { + "type": "string", + "description": "Description of this test case." + }, + "host": { + "type": "string", + "description": "Host portion of the URL." + }, + "path": { + "type": "string", + "description": "Path portion of the URL." + }, + "service": { + "type": "string", + "description": "Expected BackendService resource the given URL should be mapped to." + } + } + }, + "UrlMapValidationResult": { + "id": "UrlMapValidationResult", + "type": "object", + "description": "Message representing the validation result for a UrlMap.", + "properties": { + "loadErrors": { + "type": "array", + "items": { + "type": "string" + } + }, + "loadSucceeded": { + "type": "boolean", + "description": "Whether the given UrlMap can be successfully loaded. If false, 'loadErrors' indicates the reasons." + }, + "testFailures": { + "type": "array", + "items": { + "$ref": "TestFailure" + } + }, + "testPassed": { + "type": "boolean", + "description": "If successfully loaded, this field indicates whether the test passed. If false, 'testFailures's indicate the reason of failure." + } + } + }, + "UrlMapsValidateRequest": { + "id": "UrlMapsValidateRequest", + "type": "object", + "properties": { + "resource": { + "$ref": "UrlMap", + "description": "Content of the UrlMap to be validated." + } + } + }, + "UrlMapsValidateResponse": { + "id": "UrlMapsValidateResponse", + "type": "object", + "properties": { + "result": { + "$ref": "UrlMapValidationResult" + } + } + }, + "UsageExportLocation": { + "id": "UsageExportLocation", + "type": "object", + "description": "The location in Cloud Storage and naming method of the daily usage report. Contains bucket_name and report_name prefix.", + "properties": { + "bucketName": { + "type": "string", + "description": "The name of an existing bucket in Cloud Storage where the usage report object is stored. The Google Service Account is granted write access to this bucket. This can either be the bucket name by itself, such as example-bucket, or the bucket name with gs:// or https://storage.googleapis.com/ in front of it, such as gs://example-bucket." + }, + "reportNamePrefix": { + "type": "string", + "description": "An optional prefix for the name of the usage report object stored in bucketName. If not supplied, defaults to usage. The report is stored as a CSV file named report_name_prefix_gce_YYYYMMDD.csv where YYYYMMDD is the day of the usage according to Pacific Time. If you supply a prefix, it should conform to Cloud Storage object naming conventions." + } + } + }, + "VpnTunnel": { + "id": "VpnTunnel", + "type": "object", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "detailedStatus": { + "type": "string", + "description": "[Output Only] Detailed status message for the VPN tunnel." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "ikeVersion": { + "type": "integer", + "description": "IKE protocol version to use when establishing the VPN tunnel with peer VPN gateway. Acceptable IKE versions are 1 or 2. Default version is 2.", + "format": "int32" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "default": "compute#vpnTunnel" + }, + "localTrafficSelector": { + "type": "array", + "description": "Local traffic selector to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint.", + "items": { + "type": "string" + } + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + } + }, + "peerIp": { + "type": "string", + "description": "IP address of the peer VPN gateway." + }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the VPN tunnel resides." + }, + "remoteTrafficSelector": { + "type": "array", + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint.", + "items": { + "type": "string" + } + }, + "router": { + "type": "string", + "description": "URL of router resource to be used for dynamic routing." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sharedSecret": { + "type": "string", + "description": "Shared secret used to set the secure session between the Cloud VPN gateway and the peer VPN gateway." + }, + "sharedSecretHash": { + "type": "string", + "description": "Hash of the shared secret." + }, + "status": { + "type": "string", + "description": "[Output Only] The status of the VPN tunnel.", + "enum": [ + "ALLOCATING_RESOURCES", + "AUTHORIZATION_ERROR", + "DEPROVISIONING", + "ESTABLISHED", + "FAILED", + "FIRST_HANDSHAKE", + "NEGOTIATION_FAILURE", + "NETWORK_ERROR", + "NO_INCOMING_PACKETS", + "PROVISIONING", + "REJECTED", + "WAITING_FOR_FULL_CONFIG" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "targetVpnGateway": { + "type": "string", + "description": "URL of the VPN gateway with which this VPN tunnel is associated. Provided by the client when the VPN tunnel is created.", + "annotations": { + "required": [ + "compute.vpnTunnels.insert" + ] + } + } + } + }, + "VpnTunnelAggregatedList": { + "id": "VpnTunnelAggregatedList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "[Output Only] A map of scoped vpn tunnel lists.", + "additionalProperties": { + "$ref": "VpnTunnelsScopedList", + "description": "Name of the scope containing this set of vpn tunnels." + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "default": "compute#vpnTunnelAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "VpnTunnelList": { + "id": "VpnTunnelList", + "type": "object", + "description": "Contains a list of VpnTunnel resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of VpnTunnel resources.", + "items": { + "$ref": "VpnTunnel" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#vpnTunnel for VPN tunnels.", + "default": "compute#vpnTunnelList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "VpnTunnelsScopedList": { + "id": "VpnTunnelsScopedList", + "type": "object", + "properties": { + "vpnTunnels": { + "type": "array", + "description": "List of vpn tunnels contained in this scope.", + "items": { + "$ref": "VpnTunnel" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of addresses when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "XpnHostList": { + "id": "XpnHostList", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of XPN host project URLs.", + "items": { + "$ref": "Project" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#xpnHostList for lists of XPN hosts.", + "default": "compute#xpnHostList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource ." + } + } + }, + "XpnResourceId": { + "id": "XpnResourceId", + "type": "object", + "description": "XpnResourceId", + "properties": { + "id": { + "type": "string", + "description": "The ID of the XPN resource. In the case of projects, this field matches the project's name, not the canonical ID." + }, + "type": { + "type": "string", + "description": "The type of the XPN resource.", + "enum": [ + "PROJECT", + "XPN_RESOURCE_TYPE_UNSPECIFIED" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "Zone": { + "id": "Zone", + "type": "object", + "description": "A Zone resource.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "deprecated": { + "$ref": "DeprecationStatus", + "description": "[Output Only] The deprecation status associated with this zone." + }, + "description": { + "type": "string", + "description": "[Output Only] Textual description of the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#zone for zones.", + "default": "compute#zone" + }, + "name": { + "type": "string", + "description": "[Output Only] Name of the resource." + }, + "region": { + "type": "string", + "description": "[Output Only] Full URL reference to the region which hosts the zone." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "status": { + "type": "string", + "description": "[Output Only] Status of the zone, either UP or DOWN.", + "enum": [ + "DOWN", + "UP" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "ZoneList": { + "id": "ZoneList", + "type": "object", + "description": "Contains a list of zone resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "array", + "description": "[Output Only] A list of Zone resources.", + "items": { + "$ref": "Zone" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#zoneList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "ZoneSetLabelsRequest": { + "id": "ZoneSetLabelsRequest", + "type": "object", + "properties": { + "labelFingerprint": { + "type": "string", + "description": "The fingerprint of the previous set of labels for this resource, used to detect conflicts. The fingerprint is initially generated by Compute Engine and changes after every request to modify or update labels. You must always provide an up-to-date fingerprint hash in order to update or change labels. Make a get() request to the resource to get the latest fingerprint.", + "format": "byte" + }, + "labels": { + "type": "object", + "description": "The labels to set for this resource.", + "additionalProperties": { + "type": "string" + } + } + } + } + }, + "resources": { + "addresses": { + "methods": { + "aggregatedList": { + "id": "compute.addresses.aggregatedList", + "path": "{project}/aggregated/addresses", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of addresses.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "AddressAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.addresses.delete", + "path": "{project}/regions/{region}/addresses/{address}", + "httpMethod": "DELETE", + "description": "Deletes the specified address resource.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "address" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.addresses.get", + "path": "{project}/regions/{region}/addresses/{address}", + "httpMethod": "GET", + "description": "Returns the specified address resource.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "address" + ], + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.addresses.insert", + "path": "{project}/regions/{region}/addresses", + "httpMethod": "POST", + "description": "Creates an address resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.addresses.list", + "path": "{project}/regions/{region}/addresses", + "httpMethod": "GET", + "description": "Retrieves a list of addresses contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.addresses.testIamPermissions", + "path": "{project}/regions/{region}/addresses/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "autoscalers": { + "methods": { + "aggregatedList": { + "id": "compute.autoscalers.aggregatedList", + "path": "{project}/aggregated/autoscalers", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of autoscalers.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "AutoscalerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.autoscalers.delete", + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "httpMethod": "DELETE", + "description": "Deletes the specified autoscaler.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.autoscalers.get", + "path": "{project}/zones/{zone}/autoscalers/{autoscaler}", + "httpMethod": "GET", + "description": "Returns the specified autoscaler resource. Get a list of available autoscalers by making a list() request.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.autoscalers.insert", + "path": "{project}/zones/{zone}/autoscalers", + "httpMethod": "POST", + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.autoscalers.list", + "path": "{project}/zones/{zone}/autoscalers", + "httpMethod": "GET", + "description": "Retrieves a list of autoscalers contained within the specified zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "AutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.autoscalers.patch", + "path": "{project}/zones/{zone}/autoscalers", + "httpMethod": "PATCH", + "description": "Updates an autoscaler in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "autoscaler" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.autoscalers.testIamPermissions", + "path": "{project}/zones/{zone}/autoscalers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.autoscalers.update", + "path": "{project}/zones/{zone}/autoscalers", + "httpMethod": "PUT", + "description": "Updates an autoscaler in the specified project using the data included in the request.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "backendBuckets": { + "methods": { + "delete": { + "id": "compute.backendBuckets.delete", + "path": "{project}/global/backendBuckets/{backendBucket}", + "httpMethod": "DELETE", + "description": "Deletes the specified BackendBucket resource.", + "parameters": { + "backendBucket": { + "type": "string", + "description": "Name of the BackendBucket resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.backendBuckets.get", + "path": "{project}/global/backendBuckets/{backendBucket}", + "httpMethod": "GET", + "description": "Returns the specified BackendBucket resource. Get a list of available backend buckets by making a list() request.", + "parameters": { + "backendBucket": { + "type": "string", + "description": "Name of the BackendBucket resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "response": { + "$ref": "BackendBucket" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "id": "compute.backendBuckets.getIamPolicy", + "path": "{project}/global/backendBuckets/{resource}/getIamPolicy", + "httpMethod": "GET", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.backendBuckets.insert", + "path": "{project}/global/backendBuckets", + "httpMethod": "POST", + "description": "Creates a BackendBucket resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.backendBuckets.list", + "path": "{project}/global/backendBuckets", + "httpMethod": "GET", + "description": "Retrieves the list of BackendBucket resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "BackendBucketList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.backendBuckets.patch", + "path": "{project}/global/backendBuckets/{backendBucket}", + "httpMethod": "PATCH", + "description": "Update the entire content of the BackendBucket resource. This method supports patch semantics.", + "parameters": { + "backendBucket": { + "type": "string", + "description": "Name of the BackendBucket resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "id": "compute.backendBuckets.setIamPolicy", + "path": "{project}/global/backendBuckets/{resource}/setIamPolicy", + "httpMethod": "POST", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.backendBuckets.testIamPermissions", + "path": "{project}/global/backendBuckets/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.backendBuckets.update", + "path": "{project}/global/backendBuckets/{backendBucket}", + "httpMethod": "PUT", + "description": "Update the entire content of the BackendBucket resource.", + "parameters": { + "backendBucket": { + "type": "string", + "description": "Name of the BackendBucket resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendBucket" + ], + "request": { + "$ref": "BackendBucket" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "backendServices": { + "methods": { + "aggregatedList": { + "id": "compute.backendServices.aggregatedList", + "path": "{project}/aggregated/backendServices", + "httpMethod": "GET", + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Name of the project scoping this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "BackendServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.backendServices.delete", + "path": "{project}/global/backendServices/{backendService}", + "httpMethod": "DELETE", + "description": "Deletes the specified BackendService resource.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.backendServices.get", + "path": "{project}/global/backendServices/{backendService}", + "httpMethod": "GET", + "description": "Returns the specified BackendService resource. Get a list of available backend services by making a list() request.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ], + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "id": "compute.backendServices.getHealth", + "path": "{project}/global/backendServices/{backendService}/getHealth", + "httpMethod": "POST", + "description": "Gets the most recent health check results for this BackendService.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to which the queried instance belongs.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ], + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.backendServices.insert", + "path": "{project}/global/backendServices", + "httpMethod": "POST", + "description": "Creates a BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.backendServices.list", + "path": "{project}/global/backendServices", + "httpMethod": "GET", + "description": "Retrieves the list of BackendService resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.backendServices.patch", + "path": "{project}/global/backendServices/{backendService}", + "httpMethod": "PATCH", + "description": "Updates the entire content of the BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports patch semantics.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.backendServices.testIamPermissions", + "path": "{project}/global/backendServices/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.backendServices.update", + "path": "{project}/global/backendServices/{backendService}", + "httpMethod": "PUT", + "description": "Updates the entire content of the BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "clientSslPolicies": { + "methods": { + "testIamPermissions": { + "id": "compute.clientSslPolicies.testIamPermissions", + "path": "{project}/global/clientSslPolicies/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "diskTypes": { + "methods": { + "aggregatedList": { + "id": "compute.diskTypes.aggregatedList", + "path": "{project}/aggregated/diskTypes", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of disk types.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "DiskTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "id": "compute.diskTypes.get", + "path": "{project}/zones/{zone}/diskTypes/{diskType}", + "httpMethod": "GET", + "description": "Returns the specified disk type. Get a list of available disk types by making a list() request.", + "parameters": { + "diskType": { + "type": "string", + "description": "Name of the disk type to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "diskType" + ], + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.diskTypes.list", + "path": "{project}/zones/{zone}/diskTypes", + "httpMethod": "GET", + "description": "Retrieves a list of disk types available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "DiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "disks": { + "methods": { + "aggregatedList": { + "id": "compute.disks.aggregatedList", + "path": "{project}/aggregated/disks", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of persistent disks.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "DiskAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "createSnapshot": { + "id": "compute.disks.createSnapshot", + "path": "{project}/zones/{zone}/disks/{disk}/createSnapshot", + "httpMethod": "POST", + "description": "Creates a snapshot of a specified persistent disk.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the persistent disk to snapshot.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "guestFlush": { + "type": "boolean", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "id": "compute.disks.delete", + "path": "{project}/zones/{zone}/disks/{disk}", + "httpMethod": "DELETE", + "description": "Deletes the specified persistent disk. Deleting a disk removes its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the persistent disk to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.disks.get", + "path": "{project}/zones/{zone}/disks/{disk}", + "httpMethod": "GET", + "description": "Returns a specified persistent disk. Get a list of available persistent disks by making a list() request.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the persistent disk to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.disks.insert", + "path": "{project}/zones/{zone}/disks", + "httpMethod": "POST", + "description": "Creates a persistent disk in the specified project using the data in the request. You can create a disk with a sourceImage, a sourceSnapshot, or create an empty 500 GB data disk by omitting all properties. You can also create a disk that is larger than the default size by specifying the sizeGb property.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "sourceImage": { + "type": "string", + "description": "Optional. Source image to restore onto a disk.", + "location": "query" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.disks.list", + "path": "{project}/zones/{zone}/disks", + "httpMethod": "GET", + "description": "Retrieves a list of persistent disks contained within the specified zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "DiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "id": "compute.disks.resize", + "path": "{project}/zones/{zone}/disks/{disk}/resize", + "httpMethod": "POST", + "description": "Resizes the specified persistent disk.", + "parameters": { + "disk": { + "type": "string", + "description": "The name of the persistent disk.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "disk" + ], + "request": { + "$ref": "DisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "id": "compute.disks.setLabels", + "path": "{project}/zones/{zone}/disks/{resource}/setLabels", + "httpMethod": "POST", + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling or Tagging Resources documentation.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "ZoneSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.disks.testIamPermissions", + "path": "{project}/zones/{zone}/disks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "firewalls": { + "methods": { + "delete": { + "id": "compute.firewalls.delete", + "path": "{project}/global/firewalls/{firewall}", + "httpMethod": "DELETE", + "description": "Deletes the specified firewall.", + "parameters": { + "firewall": { + "type": "string", + "description": "Name of the firewall rule to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "firewall" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.firewalls.get", + "path": "{project}/global/firewalls/{firewall}", + "httpMethod": "GET", + "description": "Returns the specified firewall.", + "parameters": { + "firewall": { + "type": "string", + "description": "Name of the firewall rule to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "firewall" + ], + "response": { + "$ref": "Firewall" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.firewalls.insert", + "path": "{project}/global/firewalls", + "httpMethod": "POST", + "description": "Creates a firewall rule in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.firewalls.list", + "path": "{project}/global/firewalls", + "httpMethod": "GET", + "description": "Retrieves the list of firewall rules available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "FirewallList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.firewalls.patch", + "path": "{project}/global/firewalls/{firewall}", + "httpMethod": "PATCH", + "description": "Updates the specified firewall rule with the data included in the request. This method supports patch semantics.", + "parameters": { + "firewall": { + "type": "string", + "description": "Name of the firewall rule to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "firewall" + ], + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.firewalls.testIamPermissions", + "path": "{project}/global/firewalls/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.firewalls.update", + "path": "{project}/global/firewalls/{firewall}", + "httpMethod": "PUT", + "description": "Updates the specified firewall rule with the data included in the request.", + "parameters": { + "firewall": { + "type": "string", + "description": "Name of the firewall rule to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "firewall" + ], + "request": { + "$ref": "Firewall" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "forwardingRules": { + "methods": { + "aggregatedList": { + "id": "compute.forwardingRules.aggregatedList", + "path": "{project}/aggregated/forwardingRules", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of forwarding rules.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ForwardingRuleAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.forwardingRules.delete", + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "httpMethod": "DELETE", + "description": "Deletes the specified ForwardingRule resource.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.forwardingRules.get", + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}", + "httpMethod": "GET", + "description": "Returns the specified ForwardingRule resource.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.forwardingRules.insert", + "path": "{project}/regions/{region}/forwardingRules", + "httpMethod": "POST", + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.forwardingRules.list", + "path": "{project}/regions/{region}/forwardingRules", + "httpMethod": "GET", + "description": "Retrieves a list of ForwardingRule resources available to the specified project and region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setTarget": { + "id": "compute.forwardingRules.setTarget", + "path": "{project}/regions/{region}/forwardingRules/{forwardingRule}/setTarget", + "httpMethod": "POST", + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource in which target is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "forwardingRule" + ], + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.forwardingRules.testIamPermissions", + "path": "{project}/regions/{region}/forwardingRules/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "globalAddresses": { + "methods": { + "delete": { + "id": "compute.globalAddresses.delete", + "path": "{project}/global/addresses/{address}", + "httpMethod": "DELETE", + "description": "Deletes the specified address resource.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "address" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.globalAddresses.get", + "path": "{project}/global/addresses/{address}", + "httpMethod": "GET", + "description": "Returns the specified address resource. Get a list of available addresses by making a list() request.", + "parameters": { + "address": { + "type": "string", + "description": "Name of the address resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "address" + ], + "response": { + "$ref": "Address" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.globalAddresses.insert", + "path": "{project}/global/addresses", + "httpMethod": "POST", + "description": "Creates an address resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Address" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.globalAddresses.list", + "path": "{project}/global/addresses", + "httpMethod": "GET", + "description": "Retrieves a list of global addresses.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "AddressList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.globalAddresses.testIamPermissions", + "path": "{project}/global/addresses/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "globalForwardingRules": { + "methods": { + "delete": { + "id": "compute.globalForwardingRules.delete", + "path": "{project}/global/forwardingRules/{forwardingRule}", + "httpMethod": "DELETE", + "description": "Deletes the specified ForwardingRule resource.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "forwardingRule" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.globalForwardingRules.get", + "path": "{project}/global/forwardingRules/{forwardingRule}", + "httpMethod": "GET", + "description": "Returns the specified ForwardingRule resource. Get a list of available forwarding rules by making a list() request.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "forwardingRule" + ], + "response": { + "$ref": "ForwardingRule" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.globalForwardingRules.insert", + "path": "{project}/global/forwardingRules", + "httpMethod": "POST", + "description": "Creates a ForwardingRule resource in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ForwardingRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.globalForwardingRules.list", + "path": "{project}/global/forwardingRules", + "httpMethod": "GET", + "description": "Retrieves a list of ForwardingRule resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ForwardingRuleList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setTarget": { + "id": "compute.globalForwardingRules.setTarget", + "path": "{project}/global/forwardingRules/{forwardingRule}/setTarget", + "httpMethod": "POST", + "description": "Changes target URL for forwarding rule. The new target should be of the same type as the old target.", + "parameters": { + "forwardingRule": { + "type": "string", + "description": "Name of the ForwardingRule resource in which target is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "forwardingRule" + ], + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.globalForwardingRules.testIamPermissions", + "path": "{project}/global/forwardingRules/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "globalOperations": { + "methods": { + "aggregatedList": { + "id": "compute.globalOperations.aggregatedList", + "path": "{project}/aggregated/operations", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of all operations.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "OperationAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.globalOperations.delete", + "path": "{project}/global/operations/{operation}", + "httpMethod": "DELETE", + "description": "Deletes the specified Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.globalOperations.get", + "path": "{project}/global/operations/{operation}", + "httpMethod": "GET", + "description": "Retrieves the specified Operations resource. Get a list of operations by making a list() request.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.globalOperations.list", + "path": "{project}/global/operations", + "httpMethod": "GET", + "description": "Retrieves a list of Operation resources contained within the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "healthChecks": { + "methods": { + "delete": { + "id": "compute.healthChecks.delete", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "DELETE", + "description": "Deletes the specified HealthCheck resource.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.healthChecks.get", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "GET", + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.healthChecks.insert", + "path": "{project}/global/healthChecks", + "httpMethod": "POST", + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.healthChecks.list", + "path": "{project}/global/healthChecks", + "httpMethod": "GET", + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.healthChecks.patch", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PATCH", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.healthChecks.testIamPermissions", + "path": "{project}/global/healthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.healthChecks.update", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PUT", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "httpHealthChecks": { + "methods": { + "delete": { + "id": "compute.httpHealthChecks.delete", + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "DELETE", + "description": "Deletes the specified HttpHealthCheck resource.", + "parameters": { + "httpHealthCheck": { + "type": "string", + "description": "Name of the HttpHealthCheck resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.httpHealthChecks.get", + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "GET", + "description": "Returns the specified HttpHealthCheck resource. Get a list of available HTTP health checks by making a list() request.", + "parameters": { + "httpHealthCheck": { + "type": "string", + "description": "Name of the HttpHealthCheck resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "response": { + "$ref": "HttpHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.httpHealthChecks.insert", + "path": "{project}/global/httpHealthChecks", + "httpMethod": "POST", + "description": "Creates a HttpHealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.httpHealthChecks.list", + "path": "{project}/global/httpHealthChecks", + "httpMethod": "GET", + "description": "Retrieves the list of HttpHealthCheck resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HttpHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.httpHealthChecks.patch", + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "PATCH", + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "httpHealthCheck": { + "type": "string", + "description": "Name of the HttpHealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.httpHealthChecks.testIamPermissions", + "path": "{project}/global/httpHealthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.httpHealthChecks.update", + "path": "{project}/global/httpHealthChecks/{httpHealthCheck}", + "httpMethod": "PUT", + "description": "Updates a HttpHealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "httpHealthCheck": { + "type": "string", + "description": "Name of the HttpHealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpHealthCheck" + ], + "request": { + "$ref": "HttpHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "httpsHealthChecks": { + "methods": { + "delete": { + "id": "compute.httpsHealthChecks.delete", + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "httpMethod": "DELETE", + "description": "Deletes the specified HttpsHealthCheck resource.", + "parameters": { + "httpsHealthCheck": { + "type": "string", + "description": "Name of the HttpsHealthCheck resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.httpsHealthChecks.get", + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "httpMethod": "GET", + "description": "Returns the specified HttpsHealthCheck resource. Get a list of available HTTPS health checks by making a list() request.", + "parameters": { + "httpsHealthCheck": { + "type": "string", + "description": "Name of the HttpsHealthCheck resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "response": { + "$ref": "HttpsHealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.httpsHealthChecks.insert", + "path": "{project}/global/httpsHealthChecks", + "httpMethod": "POST", + "description": "Creates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.httpsHealthChecks.list", + "path": "{project}/global/httpsHealthChecks", + "httpMethod": "GET", + "description": "Retrieves the list of HttpsHealthCheck resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HttpsHealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.httpsHealthChecks.patch", + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "httpMethod": "PATCH", + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "httpsHealthCheck": { + "type": "string", + "description": "Name of the HttpsHealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.httpsHealthChecks.testIamPermissions", + "path": "{project}/global/httpsHealthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.httpsHealthChecks.update", + "path": "{project}/global/httpsHealthChecks/{httpsHealthCheck}", + "httpMethod": "PUT", + "description": "Updates a HttpsHealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "httpsHealthCheck": { + "type": "string", + "description": "Name of the HttpsHealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "httpsHealthCheck" + ], + "request": { + "$ref": "HttpsHealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "images": { + "methods": { + "delete": { + "id": "compute.images.delete", + "path": "{project}/global/images/{image}", + "httpMethod": "DELETE", + "description": "Deletes the specified image.", + "parameters": { + "image": { + "type": "string", + "description": "Name of the image resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "image" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deprecate": { + "id": "compute.images.deprecate", + "path": "{project}/global/images/{image}/deprecate", + "httpMethod": "POST", + "description": "Sets the deprecation status of an image.\n\nIf an empty request body is given, clears the deprecation status instead.", + "parameters": { + "image": { + "type": "string", + "description": "Image name.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "image" + ], + "request": { + "$ref": "DeprecationStatus" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.images.get", + "path": "{project}/global/images/{image}", + "httpMethod": "GET", + "description": "Returns the specified image. Get a list of available images by making a list() request.", + "parameters": { + "image": { + "type": "string", + "description": "Name of the image resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "image" + ], + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getFromFamily": { + "id": "compute.images.getFromFamily", + "path": "{project}/global/images/family/{family}", + "httpMethod": "GET", + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "parameters": { + "family": { + "type": "string", + "description": "Name of the image family to search for.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "family" + ], + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.images.insert", + "path": "{project}/global/images", + "httpMethod": "POST", + "description": "Creates an image in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Image" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + }, + "list": { + "id": "compute.images.list", + "path": "{project}/global/images", + "httpMethod": "GET", + "description": "Retrieves the list of private images available to the specified project. Private images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ImageList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "id": "compute.images.setLabels", + "path": "{project}/global/images/{resource}/setLabels", + "httpMethod": "POST", + "description": "Sets the labels on an image. To learn more about labels, read the Labeling or Tagging Resources documentation.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.images.testIamPermissions", + "path": "{project}/global/images/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instanceGroupManagers": { + "methods": { + "abandonInstances": { + "id": "compute.instanceGroupManagers.abandonInstances", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "httpMethod": "POST", + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "id": "compute.instanceGroupManagers.aggregatedList", + "path": "{project}/aggregated/instanceGroupManagers", + "httpMethod": "GET", + "description": "Retrieves the list of managed instance groups and groups them by zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "InstanceGroupManagerAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.instanceGroupManagers.delete", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "DELETE", + "description": "Deletes the specified managed instance group and all of the instances in that group. Note that the instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "id": "compute.instanceGroupManagers.deleteInstances", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "httpMethod": "POST", + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.instanceGroupManagers.get", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "GET", + "description": "Returns all of the details about the specified managed instance group. Get a list of available managed instance groups by making a list() request.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.instanceGroupManagers.insert", + "path": "{project}/zones/{zone}/instanceGroupManagers", + "httpMethod": "POST", + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where you want to create the managed instance group.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.instanceGroupManagers.list", + "path": "{project}/zones/{zone}/instanceGroupManagers", + "httpMethod": "GET", + "description": "Retrieves a list of managed instance groups that are contained within the specified project and zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "InstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "id": "compute.instanceGroupManagers.listManagedInstances", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "httpMethod": "POST", + "description": "Lists all of the instances in the managed instance group. Each instance in the list has a currentAction, which indicates the action that the managed instance group is performing on the instance. For example, if the group is still creating an instance, the currentAction is CREATING. If a previous action failed, the list displays the errors for that failed action.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "response": { + "$ref": "InstanceGroupManagersListManagedInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.instanceGroupManagers.patch", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "PATCH", + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports patch semantics.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where you want to create the managed instance group.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "id": "compute.instanceGroupManagers.recreateInstances", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "httpMethod": "POST", + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersRecreateInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "id": "compute.instanceGroupManagers.resize", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resize", + "httpMethod": "POST", + "description": "Resizes the managed instance group. If you increase the size, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "size": { + "type": "integer", + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "required": true, + "format": "int32", + "location": "query" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager", + "size" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resizeAdvanced": { + "id": "compute.instanceGroupManagers.resizeAdvanced", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", + "httpMethod": "POST", + "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersResizeAdvancedRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "id": "compute.instanceGroupManagers.setAutoHealingPolicies", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "httpMethod": "POST", + "description": "Modifies the autohealing policies.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "id": "compute.instanceGroupManagers.setInstanceTemplate", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "httpMethod": "POST", + "description": "Specifies the instance template to use when creating new instances in this group. The templates for existing instances in the group do not change unless you recreate them.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersSetInstanceTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "id": "compute.instanceGroupManagers.setTargetPools", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "httpMethod": "POST", + "description": "Modifies the target pools to which all instances in this managed instance group are assigned. The target pools automatically apply to all of the instances in the managed instance group. This operation is marked DONE when you make the request even if the instances have not yet been added to their target pools. The change might take some time to apply to all of the instances in the group depending on the size of the group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.instanceGroupManagers.testIamPermissions", + "path": "{project}/zones/{zone}/instanceGroupManagers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.instanceGroupManagers.update", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "PUT", + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where you want to create the managed instance group.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "instanceGroups": { + "methods": { + "addInstances": { + "id": "compute.instanceGroups.addInstances", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/addInstances", + "httpMethod": "POST", + "description": "Adds a list of instances to the specified instance group. All of the instances in the instance group must be in the same network/subnetwork. Read Adding instances for more information.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the instance group where you are adding instances.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "request": { + "$ref": "InstanceGroupsAddInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "id": "compute.instanceGroups.aggregatedList", + "path": "{project}/aggregated/instanceGroups", + "httpMethod": "GET", + "description": "Retrieves the list of instance groups and sorts them by zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "InstanceGroupAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.instanceGroups.delete", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "httpMethod": "DELETE", + "description": "Deletes the specified instance group. The instances in the group are not deleted. Note that instance group must not belong to a backend service. Read Deleting an instance group for more information.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the instance group to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.instanceGroups.get", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}", + "httpMethod": "GET", + "description": "Returns the specified instance group. Get a list of available instance groups by making a list() request.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.instanceGroups.insert", + "path": "{project}/zones/{zone}/instanceGroups", + "httpMethod": "POST", + "description": "Creates an instance group in the specified project using the parameters that are included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where you want to create the instance group.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "InstanceGroup" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.instanceGroups.list", + "path": "{project}/zones/{zone}/instanceGroups", + "httpMethod": "GET", + "description": "Retrieves the list of instance groups that are located in the specified project and zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "InstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "id": "compute.instanceGroups.listInstances", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/listInstances", + "httpMethod": "POST", + "description": "Lists the instances in the specified instance group.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "instanceGroup": { + "type": "string", + "description": "The name of the instance group from which you want to generate a list of included instances.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "request": { + "$ref": "InstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "InstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeInstances": { + "id": "compute.instanceGroups.removeInstances", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/removeInstances", + "httpMethod": "POST", + "description": "Removes one or more instances from the specified instance group, but does not delete those instances.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the instance group where the specified instances will be removed.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "request": { + "$ref": "InstanceGroupsRemoveInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setNamedPorts": { + "id": "compute.instanceGroups.setNamedPorts", + "path": "{project}/zones/{zone}/instanceGroups/{instanceGroup}/setNamedPorts", + "httpMethod": "POST", + "description": "Sets the named ports for the specified instance group.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the instance group where the named ports are updated.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroup" + ], + "request": { + "$ref": "InstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.instanceGroups.testIamPermissions", + "path": "{project}/zones/{zone}/instanceGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instanceTemplates": { + "methods": { + "delete": { + "id": "compute.instanceTemplates.delete", + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "httpMethod": "DELETE", + "description": "Deletes the specified instance template. If you delete an instance template that is being referenced from another instance group, the instance group will not be able to create or recreate virtual machine instances. Deleting an instance template is permanent and cannot be undone.", + "parameters": { + "instanceTemplate": { + "type": "string", + "description": "The name of the instance template to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.instanceTemplates.get", + "path": "{project}/global/instanceTemplates/{instanceTemplate}", + "httpMethod": "GET", + "description": "Returns the specified instance template. Get a list of available instance templates by making a list() request.", + "parameters": { + "instanceTemplate": { + "type": "string", + "description": "The name of the instance template.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "instanceTemplate" + ], + "response": { + "$ref": "InstanceTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.instanceTemplates.insert", + "path": "{project}/global/instanceTemplates", + "httpMethod": "POST", + "description": "Creates an instance template in the specified project using the data that is included in the request. If you are creating a new template to update an existing instance group, your new instance template must use the same network or, if applicable, the same subnetwork as the original template.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "InstanceTemplate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.instanceTemplates.list", + "path": "{project}/global/instanceTemplates", + "httpMethod": "GET", + "description": "Retrieves a list of instance templates that are contained within the specified project and zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "InstanceTemplateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.instanceTemplates.testIamPermissions", + "path": "{project}/global/instanceTemplates/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "instances": { + "methods": { + "addAccessConfig": { + "id": "compute.instances.addAccessConfig", + "path": "{project}/zones/{zone}/instances/{instance}/addAccessConfig", + "httpMethod": "POST", + "description": "Adds an access config to an instance's network interface.", + "parameters": { + "instance": { + "type": "string", + "description": "The instance name for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "networkInterface": { + "type": "string", + "description": "The name of the network interface to add to this instance.", + "required": true, + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance", + "networkInterface" + ], + "request": { + "$ref": "AccessConfig" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "id": "compute.instances.aggregatedList", + "path": "{project}/aggregated/instances", + "httpMethod": "GET", + "description": "Retrieves aggregated list of instances.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "InstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "attachDisk": { + "id": "compute.instances.attachDisk", + "path": "{project}/zones/{zone}/instances/{instance}/attachDisk", + "httpMethod": "POST", + "description": "Attaches a Disk resource to an instance.", + "parameters": { + "instance": { + "type": "string", + "description": "The instance name for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "AttachedDisk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "id": "compute.instances.delete", + "path": "{project}/zones/{zone}/instances/{instance}", + "httpMethod": "DELETE", + "description": "Deletes the specified Instance resource. For more information, see Stopping or Deleting an Instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteAccessConfig": { + "id": "compute.instances.deleteAccessConfig", + "path": "{project}/zones/{zone}/instances/{instance}/deleteAccessConfig", + "httpMethod": "POST", + "description": "Deletes an access config from an instance's network interface.", + "parameters": { + "accessConfig": { + "type": "string", + "description": "The name of the access config to delete.", + "required": true, + "location": "query" + }, + "instance": { + "type": "string", + "description": "The instance name for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "networkInterface": { + "type": "string", + "description": "The name of the network interface.", + "required": true, + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance", + "accessConfig", + "networkInterface" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "detachDisk": { + "id": "compute.instances.detachDisk", + "path": "{project}/zones/{zone}/instances/{instance}/detachDisk", + "httpMethod": "POST", + "description": "Detaches a disk from an instance.", + "parameters": { + "deviceName": { + "type": "string", + "description": "Disk device name to detach.", + "required": true, + "location": "query" + }, + "instance": { + "type": "string", + "description": "Instance name.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance", + "deviceName" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.instances.get", + "path": "{project}/zones/{zone}/instances/{instance}", + "httpMethod": "GET", + "description": "Returns the specified Instance resource. Get a list of available instances by making a list() request.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Instance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "id": "compute.instances.getIamPolicy", + "path": "{project}/zones/{zone}/instances/{resource}/getIamPolicy", + "httpMethod": "GET", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getSerialPortOutput": { + "id": "compute.instances.getSerialPortOutput", + "path": "{project}/zones/{zone}/instances/{instance}/serialPort", + "httpMethod": "GET", + "description": "Returns the specified instance's serial port output.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "port": { + "type": "integer", + "description": "Specifies which COM or serial port to retrieve data from.", + "default": "1", + "format": "int32", + "minimum": "1", + "maximum": "4", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "start": { + "type": "string", + "description": "For the initial request, leave this field unspecified. For subsequent calls, this field should be set to the next value that was returned in the previous call.", + "format": "int64", + "location": "query" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "SerialPortOutput" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.instances.insert", + "path": "{project}/zones/{zone}/instances", + "httpMethod": "POST", + "description": "Creates an instance resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "Instance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.instances.list", + "path": "{project}/zones/{zone}/instances", + "httpMethod": "GET", + "description": "Retrieves the list of instances contained within the specified zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "InstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "reset": { + "id": "compute.instances.reset", + "path": "{project}/zones/{zone}/instances/{instance}/reset", + "httpMethod": "POST", + "description": "Performs a hard reset on the instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setDiskAutoDelete": { + "id": "compute.instances.setDiskAutoDelete", + "path": "{project}/zones/{zone}/instances/{instance}/setDiskAutoDelete", + "httpMethod": "POST", + "description": "Sets the auto-delete flag for a disk attached to an instance.", + "parameters": { + "autoDelete": { + "type": "boolean", + "description": "Whether to auto-delete the disk when the instance is deleted.", + "required": true, + "location": "query" + }, + "deviceName": { + "type": "string", + "description": "The device name of the disk to modify.", + "required": true, + "pattern": "\\w[\\w.-]{0,254}", + "location": "query" + }, + "instance": { + "type": "string", + "description": "The instance name.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance", + "autoDelete", + "deviceName" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setIamPolicy": { + "id": "compute.instances.setIamPolicy", + "path": "{project}/zones/{zone}/instances/{resource}/setIamPolicy", + "httpMethod": "POST", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "id": "compute.instances.setLabels", + "path": "{project}/zones/{zone}/instances/{instance}/setLabels", + "httpMethod": "POST", + "description": "Sets labels on an instance. To learn more about labels, read the Labeling or Tagging Resources documentation.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMachineType": { + "id": "compute.instances.setMachineType", + "path": "{project}/zones/{zone}/instances/{instance}/setMachineType", + "httpMethod": "POST", + "description": "Changes the machine type for a stopped instance to the machine type specified in the request.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesSetMachineTypeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setMetadata": { + "id": "compute.instances.setMetadata", + "path": "{project}/zones/{zone}/instances/{instance}/setMetadata", + "httpMethod": "POST", + "description": "Sets metadata for the specified instance to the data included in the request.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setScheduling": { + "id": "compute.instances.setScheduling", + "path": "{project}/zones/{zone}/instances/{instance}/setScheduling", + "httpMethod": "POST", + "description": "Sets an instance's scheduling options.", + "parameters": { + "instance": { + "type": "string", + "description": "Instance name.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "Scheduling" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setServiceAccount": { + "id": "compute.instances.setServiceAccount", + "path": "{project}/zones/{zone}/instances/{instance}/setServiceAccount", + "httpMethod": "POST", + "description": "Sets the service account on the instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to start.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesSetServiceAccountRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTags": { + "id": "compute.instances.setTags", + "path": "{project}/zones/{zone}/instances/{instance}/setTags", + "httpMethod": "POST", + "description": "Sets tags for the specified instance to the data included in the request.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "Tags" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "start": { + "id": "compute.instances.start", + "path": "{project}/zones/{zone}/instances/{instance}/start", + "httpMethod": "POST", + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to start.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "startWithEncryptionKey": { + "id": "compute.instances.startWithEncryptionKey", + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "httpMethod": "POST", + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to start.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "stop": { + "id": "compute.instances.stop", + "path": "{project}/zones/{zone}/instances/{instance}/stop", + "httpMethod": "POST", + "description": "Stops a running instance, shutting it down cleanly, and allows you to restart the instance at a later time. Stopped instances do not incur per-minute, virtual machine usage charges while they are stopped, but any resources that the virtual machine is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted. For more information, see Stopping an instance.", + "parameters": { + "discardLocalSsd": { + "type": "boolean", + "description": "If true, discard the contents of any attached localSSD partitions. Default value is false.", + "location": "query" + }, + "instance": { + "type": "string", + "description": "Name of the instance resource to stop.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "suspend": { + "id": "compute.instances.suspend", + "path": "{project}/zones/{zone}/instances/{instance}/suspend", + "httpMethod": "POST", + "description": "This method suspends a running instance, saving its state to persistent storage, and allows you to resume the instance at a later time. Suspended instances incur reduced per-minute, virtual machine usage charges while they are suspended. Any resources the virtual machine is using, such as persistent disks and static IP addresses, will continue to be charged until they are deleted.", + "parameters": { + "discardLocalSsd": { + "type": "boolean", + "description": "If true, discard the contents of any attached localSSD partitions. Default value is false.", + "location": "query" + }, + "instance": { + "type": "string", + "description": "Name of the instance resource to suspend.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.instances.testIamPermissions", + "path": "{project}/zones/{zone}/instances/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "licenses": { + "methods": { + "get": { + "id": "compute.licenses.get", + "path": "{project}/global/licenses/{license}", + "httpMethod": "GET", + "description": "Returns the specified License resource. Get a list of available licenses by making a list() request.", + "parameters": { + "license": { + "type": "string", + "description": "Name of the License resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "license" + ], + "response": { + "$ref": "License" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "machineTypes": { + "methods": { + "aggregatedList": { + "id": "compute.machineTypes.aggregatedList", + "path": "{project}/aggregated/machineTypes", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of machine types.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "MachineTypeAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "get": { + "id": "compute.machineTypes.get", + "path": "{project}/zones/{zone}/machineTypes/{machineType}", + "httpMethod": "GET", + "description": "Returns the specified machine type. Get a list of available machine types by making a list() request.", + "parameters": { + "machineType": { + "type": "string", + "description": "Name of the machine type to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "machineType" + ], + "response": { + "$ref": "MachineType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.machineTypes.list", + "path": "{project}/zones/{zone}/machineTypes", + "httpMethod": "GET", + "description": "Retrieves a list of machine types available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "MachineTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "networks": { + "methods": { + "delete": { + "id": "compute.networks.delete", + "path": "{project}/global/networks/{network}", + "httpMethod": "DELETE", + "description": "Deletes the specified network.", + "parameters": { + "network": { + "type": "string", + "description": "Name of the network to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "network" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.networks.get", + "path": "{project}/global/networks/{network}", + "httpMethod": "GET", + "description": "Returns the specified network. Get a list of available networks by making a list() request.", + "parameters": { + "network": { + "type": "string", + "description": "Name of the network to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "network" + ], + "response": { + "$ref": "Network" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.networks.insert", + "path": "{project}/global/networks", + "httpMethod": "POST", + "description": "Creates a network in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Network" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.networks.list", + "path": "{project}/global/networks", + "httpMethod": "GET", + "description": "Retrieves the list of networks available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "NetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "switchToCustomMode": { + "id": "compute.networks.switchToCustomMode", + "path": "{project}/global/networks/{network}/switchToCustomMode", + "httpMethod": "POST", + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "parameters": { + "network": { + "type": "string", + "description": "Name of the network to be updated.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "network" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.networks.testIamPermissions", + "path": "{project}/global/networks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "projects": { + "methods": { + "disableXpnHost": { + "id": "compute.projects.disableXpnHost", + "path": "{project}/disableXpnHost", + "httpMethod": "POST", + "description": "Disable this project as an XPN host project.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "disableXpnResource": { + "id": "compute.projects.disableXpnResource", + "path": "{project}/disableXpnResource", + "httpMethod": "POST", + "description": "Disable an XPN resource associated with this host project.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ProjectsDisableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnHost": { + "id": "compute.projects.enableXpnHost", + "path": "{project}/enableXpnHost", + "httpMethod": "POST", + "description": "Enable this project as an XPN host project.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "enableXpnResource": { + "id": "compute.projects.enableXpnResource", + "path": "{project}/enableXpnResource", + "httpMethod": "POST", + "description": "Enable XPN resource (a.k.a service project or service folder in the future) for a host project, so that subnetworks in the host project can be used by instances in the service project or folder.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ProjectsEnableXpnResourceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.projects.get", + "path": "{project}", + "httpMethod": "GET", + "description": "Returns the specified Project resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getXpnHost": { + "id": "compute.projects.getXpnHost", + "path": "{project}/getXpnHost", + "httpMethod": "GET", + "description": "Get the XPN host project that this project links to. May be empty if no link exists.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "getXpnResources": { + "id": "compute.projects.getXpnResources", + "path": "{project}/getXpnResources", + "httpMethod": "GET", + "description": "Get XPN resources associated with this host project.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ProjectsGetXpnResources" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "listXpnHosts": { + "id": "compute.projects.listXpnHosts", + "path": "{project}/listXpnHosts", + "httpMethod": "POST", + "description": "List all XPN host projects visible to the user in an organization.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ProjectsListXpnHostsRequest" + }, + "response": { + "$ref": "XpnHostList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveDisk": { + "id": "compute.projects.moveDisk", + "path": "{project}/moveDisk", + "httpMethod": "POST", + "description": "Moves a persistent disk from one zone to another.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "DiskMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveInstance": { + "id": "compute.projects.moveInstance", + "path": "{project}/moveInstance", + "httpMethod": "POST", + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "InstanceMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setCommonInstanceMetadata": { + "id": "compute.projects.setCommonInstanceMetadata", + "path": "{project}/setCommonInstanceMetadata", + "httpMethod": "POST", + "description": "Sets metadata common to all instances within the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Metadata" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUsageExportBucket": { + "id": "compute.projects.setUsageExportBucket", + "path": "{project}/setUsageExportBucket", + "httpMethod": "POST", + "description": "Enables the usage export feature and sets the usage export bucket where reports are stored. If you provide an empty request body using this method, the usage export feature will be disabled.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "UsageExportLocation" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/devstorage.full_control", + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/devstorage.read_write" + ] + } + } + }, + "regionAutoscalers": { + "methods": { + "delete": { + "id": "compute.regionAutoscalers.delete", + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "DELETE", + "description": "Deletes the specified autoscaler.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionAutoscalers.get", + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "GET", + "description": "Returns the specified autoscaler.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionAutoscalers.insert", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "POST", + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionAutoscalers.list", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "GET", + "description": "Retrieves a list of autoscalers contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionAutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.regionAutoscalers.patch", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "PATCH", + "description": "Updates a autoscaler in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionAutoscalers.testIamPermissions", + "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionAutoscalers.update", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "PUT", + "description": "Updates a autoscaler in the specified project using the data included in the request.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionBackendServices": { + "methods": { + "delete": { + "id": "compute.regionBackendServices.delete", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "DELETE", + "description": "Deletes the specified regional BackendService resource.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionBackendServices.get", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "GET", + "description": "Returns the specified regional BackendService resource.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "id": "compute.regionBackendServices.getHealth", + "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", + "httpMethod": "POST", + "description": "Gets the most recent health check results for this regional BackendService.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to which the queried instance belongs.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionBackendServices.insert", + "path": "{project}/regions/{region}/backendServices", + "httpMethod": "POST", + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionBackendServices.list", + "path": "{project}/regions/{region}/backendServices", + "httpMethod": "GET", + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.regionBackendServices.patch", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "PATCH", + "description": "Update the entire content of the regional BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports patch semantics.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionBackendServices.testIamPermissions", + "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionBackendServices.update", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "PUT", + "description": "Update the entire content of the regional BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionDiskTypes": { + "methods": { + "get": { + "id": "compute.regionDiskTypes.get", + "path": "{project}/regions/{region}/diskTypes/{diskType}", + "httpMethod": "GET", + "description": "Returns the specified regional disk type. Get a list of available disk types by making a list() request.", + "parameters": { + "diskType": { + "type": "string", + "description": "Name of the disk type to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "diskType" + ], + "response": { + "$ref": "DiskType" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.regionDiskTypes.list", + "path": "{project}/regions/{region}/diskTypes", + "httpMethod": "GET", + "description": "Retrieves a list of regional disk types available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionDiskTypeList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionDisks": { + "methods": { + "createSnapshot": { + "id": "compute.regionDisks.createSnapshot", + "path": "{project}/regions/{region}/disks/{disk}/createSnapshot", + "httpMethod": "POST", + "description": "Creates a snapshot of this regional disk.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the regional persistent disk to snapshot.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "guestFlush": { + "type": "boolean", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "request": { + "$ref": "Snapshot" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "id": "compute.regionDisks.delete", + "path": "{project}/regions/{region}/disks/{disk}", + "httpMethod": "DELETE", + "description": "Deletes the specified regional persistent disk. Deleting a regional disk removes all the replicas of its data permanently and is irreversible. However, deleting a disk does not delete any snapshots previously made from the disk. You must separately delete snapshots.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the regional persistent disk to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionDisks.get", + "path": "{project}/regions/{region}/disks/{disk}", + "httpMethod": "GET", + "description": "Returns a specified regional persistent disk.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the regional persistent disk to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "response": { + "$ref": "Disk" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionDisks.insert", + "path": "{project}/regions/{region}/disks", + "httpMethod": "POST", + "description": "Creates a persistent regional disk in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "sourceImage": { + "type": "string", + "description": "Optional. Source image to restore onto a disk.", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Disk" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionDisks.list", + "path": "{project}/regions/{region}/disks", + "httpMethod": "GET", + "description": "Retrieves the list of persistent disks contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionDiskList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "resize": { + "id": "compute.regionDisks.resize", + "path": "{project}/regions/{region}/disks/{disk}/resize", + "httpMethod": "POST", + "description": "Resizes the specified regional persistent disk.", + "parameters": { + "disk": { + "type": "string", + "description": "Name of the regional persistent disk.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "The project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "disk" + ], + "request": { + "$ref": "RegionDisksResizeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setLabels": { + "id": "compute.regionDisks.setLabels", + "path": "{project}/regions/{region}/disks/{resource}/setLabels", + "httpMethod": "POST", + "description": "Sets the labels on the target regional disk.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "RegionSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionDisks.testIamPermissions", + "path": "{project}/regions/{region}/disks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "httpMethod": "POST", + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "id": "compute.regionInstanceGroupManagers.delete", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "DELETE", + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "httpMethod": "POST", + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionInstanceGroupManagers.get", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "GET", + "description": "Returns all of the details for the specified managed instance group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group to return.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionInstanceGroupManagers.insert", + "path": "{project}/regions/{region}/instanceGroupManagers", + "httpMethod": "POST", + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionInstanceGroupManagers.list", + "path": "{project}/regions/{region}/instanceGroupManagers", + "httpMethod": "GET", + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "httpMethod": "POST", + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.regionInstanceGroupManagers.patch", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "PATCH", + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method. This method supports patch semantics.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "recreateInstances": { + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "httpMethod": "POST", + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "id": "compute.regionInstanceGroupManagers.resize", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "httpMethod": "POST", + "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + }, + "size": { + "type": "integer", + "description": "Number of instances that should exist in this instance group manager.", + "required": true, + "format": "int32", + "minimum": "0", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "httpMethod": "POST", + "description": "Modifies the autohealing policy for the instances in this managed instance group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "httpMethod": "POST", + "description": "Sets the instance template to use when creating new instances in this group. Existing instances are not affected.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "httpMethod": "POST", + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionInstanceGroupManagers.testIamPermissions", + "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionInstanceGroupManagers.update", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "PUT", + "description": "Updates a managed instance group using the information that you specify in the request. This operation is marked as DONE when the group is updated even if the instances in the group have not yet been updated. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the instance group manager.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionInstanceGroups": { + "methods": { + "get": { + "id": "compute.regionInstanceGroups.get", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", + "httpMethod": "GET", + "description": "Returns the specified instance group resource.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "Name of the instance group resource to return.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.regionInstanceGroups.list", + "path": "{project}/regions/{region}/instanceGroups", + "httpMethod": "GET", + "description": "Retrieves the list of instance group resources contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionInstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "id": "compute.regionInstanceGroups.listInstances", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "httpMethod": "POST", + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "instanceGroup": { + "type": "string", + "description": "Name of the regional instance group for which we want to list the instances.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "id": "compute.regionInstanceGroups.setNamedPorts", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "httpMethod": "POST", + "description": "Sets the named ports for the specified regional instance group.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the regional instance group where the named ports are updated.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionInstanceGroups.testIamPermissions", + "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionOperations": { + "methods": { + "delete": { + "id": "compute.regionOperations.delete", + "path": "{project}/regions/{region}/operations/{operation}", + "httpMethod": "DELETE", + "description": "Deletes the specified region-specific Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionOperations.get", + "path": "{project}/regions/{region}/operations/{operation}", + "httpMethod": "GET", + "description": "Retrieves the specified region-specific Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.regionOperations.list", + "path": "{project}/regions/{region}/operations", + "httpMethod": "GET", + "description": "Retrieves a list of Operation resources contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regions": { + "methods": { + "get": { + "id": "compute.regions.get", + "path": "{project}/regions/{region}", + "httpMethod": "GET", + "description": "Returns the specified Region resource. Get a list of available regions by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "Region" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.regions.list", + "path": "{project}/regions", + "httpMethod": "GET", + "description": "Retrieves the list of region resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "RegionList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "routers": { + "methods": { + "aggregatedList": { + "id": "compute.routers.aggregatedList", + "path": "{project}/aggregated/routers", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of routers.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "RouterAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.routers.delete", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "DELETE", + "description": "Deletes the specified Router resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.routers.get", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "GET", + "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "Router" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRouterStatus": { + "id": "compute.routers.getRouterStatus", + "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", + "httpMethod": "GET", + "description": "Retrieves runtime information of the specified router.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to query.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "RouterStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.routers.insert", + "path": "{project}/regions/{region}/routers", + "httpMethod": "POST", + "description": "Creates a Router resource in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.routers.list", + "path": "{project}/regions/{region}/routers", + "httpMethod": "GET", + "description": "Retrieves a list of Router resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RouterList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.routers.patch", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "PATCH", + "description": "Updates the entire content of the Router resource. This method supports patch semantics.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "preview": { + "id": "compute.routers.preview", + "path": "{project}/regions/{region}/routers/{router}/preview", + "httpMethod": "POST", + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to query.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.routers.testIamPermissions", + "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.routers.update", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "PUT", + "description": "Updates the entire content of the Router resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "routes": { + "methods": { + "delete": { + "id": "compute.routes.delete", + "path": "{project}/global/routes/{route}", + "httpMethod": "DELETE", + "description": "Deletes the specified Route resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "route": { + "type": "string", + "description": "Name of the Route resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "route" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.routes.get", + "path": "{project}/global/routes/{route}", + "httpMethod": "GET", + "description": "Returns the specified Route resource. Get a list of available routes by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "route": { + "type": "string", + "description": "Name of the Route resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "route" + ], + "response": { + "$ref": "Route" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.routes.insert", + "path": "{project}/global/routes", + "httpMethod": "POST", + "description": "Creates a Route resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "Route" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.routes.list", + "path": "{project}/global/routes", + "httpMethod": "GET", + "description": "Retrieves the list of Route resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "RouteList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.routes.testIamPermissions", + "path": "{project}/global/routes/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "snapshots": { + "methods": { + "delete": { + "id": "compute.snapshots.delete", + "path": "{project}/global/snapshots/{snapshot}", + "httpMethod": "DELETE", + "description": "Deletes the specified Snapshot resource. Keep in mind that deleting a single snapshot might not necessarily delete all the data on that snapshot. If any data on the snapshot that is marked for deletion is needed for subsequent snapshots, the data will be moved to the next corresponding snapshot.\n\nFor more information, see Deleting snaphots.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "snapshot": { + "type": "string", + "description": "Name of the Snapshot resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "snapshot" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.snapshots.get", + "path": "{project}/global/snapshots/{snapshot}", + "httpMethod": "GET", + "description": "Returns the specified Snapshot resource. Get a list of available snapshots by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "snapshot": { + "type": "string", + "description": "Name of the Snapshot resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "snapshot" + ], + "response": { + "$ref": "Snapshot" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.snapshots.list", + "path": "{project}/global/snapshots", + "httpMethod": "GET", + "description": "Retrieves the list of Snapshot resources contained within the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "SnapshotList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setLabels": { + "id": "compute.snapshots.setLabels", + "path": "{project}/global/snapshots/{resource}/setLabels", + "httpMethod": "POST", + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling or Tagging Resources documentation.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "GlobalSetLabelsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.snapshots.testIamPermissions", + "path": "{project}/global/snapshots/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "sslCertificates": { + "methods": { + "delete": { + "id": "compute.sslCertificates.delete", + "path": "{project}/global/sslCertificates/{sslCertificate}", + "httpMethod": "DELETE", + "description": "Deletes the specified SslCertificate resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "sslCertificate": { + "type": "string", + "description": "Name of the SslCertificate resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "sslCertificate" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.sslCertificates.get", + "path": "{project}/global/sslCertificates/{sslCertificate}", + "httpMethod": "GET", + "description": "Returns the specified SslCertificate resource. Get a list of available SSL certificates by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "sslCertificate": { + "type": "string", + "description": "Name of the SslCertificate resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "sslCertificate" + ], + "response": { + "$ref": "SslCertificate" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.sslCertificates.insert", + "path": "{project}/global/sslCertificates", + "httpMethod": "POST", + "description": "Creates a SslCertificate resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "SslCertificate" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.sslCertificates.list", + "path": "{project}/global/sslCertificates", + "httpMethod": "GET", + "description": "Retrieves the list of SslCertificate resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "SslCertificateList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.sslCertificates.testIamPermissions", + "path": "{project}/global/sslCertificates/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "subnetworks": { + "methods": { + "aggregatedList": { + "id": "compute.subnetworks.aggregatedList", + "path": "{project}/aggregated/subnetworks", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of subnetworks.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "SubnetworkAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.subnetworks.delete", + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "DELETE", + "description": "Deletes the specified subnetwork.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "subnetwork": { + "type": "string", + "description": "Name of the Subnetwork resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "expandIpCidrRange": { + "id": "compute.subnetworks.expandIpCidrRange", + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "httpMethod": "POST", + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "subnetwork": { + "type": "string", + "description": "Name of the Subnetwork resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.subnetworks.get", + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "GET", + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "subnetwork": { + "type": "string", + "description": "Name of the Subnetwork resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "response": { + "$ref": "Subnetwork" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getIamPolicy": { + "id": "compute.subnetworks.getIamPolicy", + "path": "{project}/regions/{region}/subnetworks/{resource}/getIamPolicy", + "httpMethod": "GET", + "description": "Gets the access control policy for a resource. May be empty if no such policy or resource exists.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.subnetworks.insert", + "path": "{project}/regions/{region}/subnetworks", + "httpMethod": "POST", + "description": "Creates a subnetwork in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Subnetwork" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.subnetworks.list", + "path": "{project}/regions/{region}/subnetworks", + "httpMethod": "GET", + "description": "Retrieves a list of subnetworks available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "SubnetworkList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setIamPolicy": { + "id": "compute.subnetworks.setIamPolicy", + "path": "{project}/regions/{region}/subnetworks/{resource}/setIamPolicy", + "httpMethod": "POST", + "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "Policy" + }, + "response": { + "$ref": "Policy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.subnetworks.testIamPermissions", + "path": "{project}/regions/{region}/subnetworks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetHttpProxies": { + "methods": { + "delete": { + "id": "compute.targetHttpProxies.delete", + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetHttpProxy resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpProxy": { + "type": "string", + "description": "Name of the TargetHttpProxy resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetHttpProxies.get", + "path": "{project}/global/targetHttpProxies/{targetHttpProxy}", + "httpMethod": "GET", + "description": "Returns the specified TargetHttpProxy resource. Get a list of available target HTTP proxies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpProxy": { + "type": "string", + "description": "Name of the TargetHttpProxy resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "response": { + "$ref": "TargetHttpProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetHttpProxies.insert", + "path": "{project}/global/targetHttpProxies", + "httpMethod": "POST", + "description": "Creates a TargetHttpProxy resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "TargetHttpProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetHttpProxies.list", + "path": "{project}/global/targetHttpProxies", + "httpMethod": "GET", + "description": "Retrieves the list of TargetHttpProxy resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetHttpProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setUrlMap": { + "id": "compute.targetHttpProxies.setUrlMap", + "path": "{project}/targetHttpProxies/{targetHttpProxy}/setUrlMap", + "httpMethod": "POST", + "description": "Changes the URL map for TargetHttpProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpProxy": { + "type": "string", + "description": "Name of the TargetHttpProxy to set a URL map for.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpProxy" + ], + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.targetHttpProxies.testIamPermissions", + "path": "{project}/global/targetHttpProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetHttpsProxies": { + "methods": { + "delete": { + "id": "compute.targetHttpsProxies.delete", + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetHttpsProxy resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpsProxy": { + "type": "string", + "description": "Name of the TargetHttpsProxy resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetHttpsProxies.get", + "path": "{project}/global/targetHttpsProxies/{targetHttpsProxy}", + "httpMethod": "GET", + "description": "Returns the specified TargetHttpsProxy resource. Get a list of available target HTTPS proxies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpsProxy": { + "type": "string", + "description": "Name of the TargetHttpsProxy resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "response": { + "$ref": "TargetHttpsProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetHttpsProxies.insert", + "path": "{project}/global/targetHttpsProxies", + "httpMethod": "POST", + "description": "Creates a TargetHttpsProxy resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "TargetHttpsProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetHttpsProxies.list", + "path": "{project}/global/targetHttpsProxies", + "httpMethod": "GET", + "description": "Retrieves the list of TargetHttpsProxy resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetHttpsProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setSslCertificates": { + "id": "compute.targetHttpsProxies.setSslCertificates", + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setSslCertificates", + "httpMethod": "POST", + "description": "Replaces SslCertificates for TargetHttpsProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpsProxy": { + "type": "string", + "description": "Name of the TargetHttpsProxy resource to set an SslCertificates resource for.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "request": { + "$ref": "TargetHttpsProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setUrlMap": { + "id": "compute.targetHttpsProxies.setUrlMap", + "path": "{project}/targetHttpsProxies/{targetHttpsProxy}/setUrlMap", + "httpMethod": "POST", + "description": "Changes the URL map for TargetHttpsProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetHttpsProxy": { + "type": "string", + "description": "Name of the TargetHttpsProxy resource whose URL map is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetHttpsProxy" + ], + "request": { + "$ref": "UrlMapReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.targetHttpsProxies.testIamPermissions", + "path": "{project}/global/targetHttpsProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetInstances": { + "methods": { + "aggregatedList": { + "id": "compute.targetInstances.aggregatedList", + "path": "{project}/aggregated/targetInstances", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target instances.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetInstanceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.targetInstances.delete", + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetInstance resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetInstance": { + "type": "string", + "description": "Name of the TargetInstance resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetInstances.get", + "path": "{project}/zones/{zone}/targetInstances/{targetInstance}", + "httpMethod": "GET", + "description": "Returns the specified TargetInstance resource. Get a list of available target instances by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetInstance": { + "type": "string", + "description": "Name of the TargetInstance resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "targetInstance" + ], + "response": { + "$ref": "TargetInstance" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetInstances.insert", + "path": "{project}/zones/{zone}/targetInstances", + "httpMethod": "POST", + "description": "Creates a TargetInstance resource in the specified project and zone using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "request": { + "$ref": "TargetInstance" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetInstances.list", + "path": "{project}/zones/{zone}/targetInstances", + "httpMethod": "GET", + "description": "Retrieves a list of TargetInstance resources available to the specified project and zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "TargetInstanceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.targetInstances.testIamPermissions", + "path": "{project}/zones/{zone}/targetInstances/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetPools": { + "methods": { + "addHealthCheck": { + "id": "compute.targetPools.addHealthCheck", + "path": "{project}/regions/{region}/targetPools/{targetPool}/addHealthCheck", + "httpMethod": "POST", + "description": "Adds health check URLs to a target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the target pool to add a health check to.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "TargetPoolsAddHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "addInstance": { + "id": "compute.targetPools.addInstance", + "path": "{project}/regions/{region}/targetPools/{targetPool}/addInstance", + "httpMethod": "POST", + "description": "Adds an instance to a target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to add instances to.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "TargetPoolsAddInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "aggregatedList": { + "id": "compute.targetPools.aggregatedList", + "path": "{project}/aggregated/targetPools", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target pools.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetPoolAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.targetPools.delete", + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "httpMethod": "DELETE", + "description": "Deletes the specified target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetPools.get", + "path": "{project}/regions/{region}/targetPools/{targetPool}", + "httpMethod": "GET", + "description": "Returns the specified target pool. Get a list of available target pools by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "response": { + "$ref": "TargetPool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "id": "compute.targetPools.getHealth", + "path": "{project}/regions/{region}/targetPools/{targetPool}/getHealth", + "httpMethod": "POST", + "description": "Gets the most recent health check results for each IP for the instance that is referenced by the given target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to which the queried instance belongs.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "InstanceReference" + }, + "response": { + "$ref": "TargetPoolInstanceHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetPools.insert", + "path": "{project}/regions/{region}/targetPools", + "httpMethod": "POST", + "description": "Creates a target pool in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "TargetPool" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetPools.list", + "path": "{project}/regions/{region}/targetPools", + "httpMethod": "GET", + "description": "Retrieves a list of target pools available to the specified project and region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "TargetPoolList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "removeHealthCheck": { + "id": "compute.targetPools.removeHealthCheck", + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeHealthCheck", + "httpMethod": "POST", + "description": "Removes health check URL from a target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the target pool to remove health checks from.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "TargetPoolsRemoveHealthCheckRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "removeInstance": { + "id": "compute.targetPools.removeInstance", + "path": "{project}/regions/{region}/targetPools/{targetPool}/removeInstance", + "httpMethod": "POST", + "description": "Removes instance URL from a target pool.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to remove instances from.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "TargetPoolsRemoveInstanceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setBackup": { + "id": "compute.targetPools.setBackup", + "path": "{project}/regions/{region}/targetPools/{targetPool}/setBackup", + "httpMethod": "POST", + "description": "Changes a backup target pool's configurations.", + "parameters": { + "failoverRatio": { + "type": "number", + "description": "New failoverRatio value for the target pool.", + "format": "float", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetPool": { + "type": "string", + "description": "Name of the TargetPool resource to set a backup pool for.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetPool" + ], + "request": { + "$ref": "TargetReference" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.targetPools.testIamPermissions", + "path": "{project}/regions/{region}/targetPools/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetSslProxies": { + "methods": { + "delete": { + "id": "compute.targetSslProxies.delete", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetSslProxy resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetSslProxies.get", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "httpMethod": "GET", + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetSslProxies.insert", + "path": "{project}/global/targetSslProxies", + "httpMethod": "POST", + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetSslProxies.list", + "path": "{project}/global/targetSslProxies", + "httpMethod": "GET", + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "id": "compute.targetSslProxies.setBackendService", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "httpMethod": "POST", + "description": "Changes the BackendService for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "id": "compute.targetSslProxies.setProxyHeader", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "httpMethod": "POST", + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "id": "compute.targetSslProxies.setSslCertificates", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "httpMethod": "POST", + "description": "Changes SslCertificates for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.targetSslProxies.testIamPermissions", + "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "id": "compute.targetVpnGateways.aggregatedList", + "path": "{project}/aggregated/targetVpnGateways", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target VPN gateways.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetVpnGatewayAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.targetVpnGateways.delete", + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "httpMethod": "DELETE", + "description": "Deletes the specified target VPN gateway.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetVpnGateway": { + "type": "string", + "description": "Name of the target VPN gateway to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetVpnGateways.get", + "path": "{project}/regions/{region}/targetVpnGateways/{targetVpnGateway}", + "httpMethod": "GET", + "description": "Returns the specified target VPN gateway. Get a list of available target VPN gateways by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "targetVpnGateway": { + "type": "string", + "description": "Name of the target VPN gateway to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "targetVpnGateway" + ], + "response": { + "$ref": "TargetVpnGateway" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetVpnGateways.insert", + "path": "{project}/regions/{region}/targetVpnGateways", + "httpMethod": "POST", + "description": "Creates a target VPN gateway in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "TargetVpnGateway" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetVpnGateways.list", + "path": "{project}/regions/{region}/targetVpnGateways", + "httpMethod": "GET", + "description": "Retrieves a list of target VPN gateways available to the specified project and region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "TargetVpnGatewayList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.targetVpnGateways.testIamPermissions", + "path": "{project}/regions/{region}/targetVpnGateways/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "urlMaps": { + "methods": { + "delete": { + "id": "compute.urlMaps.delete", + "path": "{project}/global/urlMaps/{urlMap}", + "httpMethod": "DELETE", + "description": "Deletes the specified UrlMap resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.urlMaps.get", + "path": "{project}/global/urlMaps/{urlMap}", + "httpMethod": "GET", + "description": "Returns the specified UrlMap resource. Get a list of available URL maps by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "response": { + "$ref": "UrlMap" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.urlMaps.insert", + "path": "{project}/global/urlMaps", + "httpMethod": "POST", + "description": "Creates a UrlMap resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "invalidateCache": { + "id": "compute.urlMaps.invalidateCache", + "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", + "httpMethod": "POST", + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.urlMaps.list", + "path": "{project}/global/urlMaps", + "httpMethod": "GET", + "description": "Retrieves the list of UrlMap resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "UrlMapList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.urlMaps.patch", + "path": "{project}/global/urlMaps/{urlMap}", + "httpMethod": "PATCH", + "description": "Updates the entire content of the UrlMap resource. This method supports patch semantics.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.urlMaps.testIamPermissions", + "path": "{project}/global/urlMaps/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.urlMaps.update", + "path": "{project}/global/urlMaps/{urlMap}", + "httpMethod": "PUT", + "description": "Updates the entire content of the UrlMap resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "request": { + "$ref": "UrlMap" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "validate": { + "id": "compute.urlMaps.validate", + "path": "{project}/global/urlMaps/{urlMap}/validate", + "httpMethod": "POST", + "description": "Runs static validation for the UrlMap. In particular, the tests of the provided UrlMap will be run. Calling this method does NOT create the UrlMap.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap resource to be validated as.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "request": { + "$ref": "UrlMapsValidateRequest" + }, + "response": { + "$ref": "UrlMapsValidateResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "vpnTunnels": { + "methods": { + "aggregatedList": { + "id": "compute.vpnTunnels.aggregatedList", + "path": "{project}/aggregated/vpnTunnels", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of VPN tunnels.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "VpnTunnelAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.vpnTunnels.delete", + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "httpMethod": "DELETE", + "description": "Deletes the specified VpnTunnel resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "vpnTunnel": { + "type": "string", + "description": "Name of the VpnTunnel resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.vpnTunnels.get", + "path": "{project}/regions/{region}/vpnTunnels/{vpnTunnel}", + "httpMethod": "GET", + "description": "Returns the specified VpnTunnel resource. Get a list of available VPN tunnels by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "vpnTunnel": { + "type": "string", + "description": "Name of the VpnTunnel resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "vpnTunnel" + ], + "response": { + "$ref": "VpnTunnel" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.vpnTunnels.insert", + "path": "{project}/regions/{region}/vpnTunnels", + "httpMethod": "POST", + "description": "Creates a VpnTunnel resource in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "VpnTunnel" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.vpnTunnels.list", + "path": "{project}/regions/{region}/vpnTunnels", + "httpMethod": "GET", + "description": "Retrieves a list of VpnTunnel resources contained in the specified project and region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "VpnTunnelList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "testIamPermissions": { + "id": "compute.vpnTunnels.testIamPermissions", + "path": "{project}/regions/{region}/vpnTunnels/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "zoneOperations": { + "methods": { + "delete": { + "id": "compute.zoneOperations.delete", + "path": "{project}/zones/{zone}/operations/{operation}", + "httpMethod": "DELETE", + "description": "Deletes the specified zone-specific Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.zoneOperations.get", + "path": "{project}/zones/{zone}/operations/{operation}", + "httpMethod": "GET", + "description": "Retrieves the specified zone-specific Operations resource.", + "parameters": { + "operation": { + "type": "string", + "description": "Name of the Operations resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.zoneOperations.list", + "path": "{project}/zones/{zone}/operations", + "httpMethod": "GET", + "description": "Retrieves a list of Operation resources contained within the specified zone.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone for request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "OperationList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "zones": { + "methods": { + "get": { + "id": "compute.zones.get", + "path": "{project}/zones/{zone}", + "httpMethod": "GET", + "description": "Returns the specified Zone resource. Get a list of available zones by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "Name of the zone resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone" + ], + "response": { + "$ref": "Zone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.zones.list", + "path": "{project}/zones", + "httpMethod": "GET", + "description": "Retrieves the list of Zone resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ZoneList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + } + } +} diff --git a/etc/api/compute/beta/compute-api.json b/etc/api/compute/beta/compute-api.json index 287cd063b8..fb1aa0b0ac 100644 --- a/etc/api/compute/beta/compute-api.json +++ b/etc/api/compute/beta/compute-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/vE0JIg_PYjJmE8NwLJpJ5mHAwEQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/8RdBsrY5Sd00svzgdJBUxxYBOv0\"", "discoveryVersion": "v1", "id": "compute:beta", "name": "compute", "version": "beta", - "revision": "20160328", + "revision": "20160908", "title": "Compute Engine API", - "description": "API for the Google Compute Engine service.", + "description": "Creates and runs virtual machines on Google Cloud Platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -94,7 +94,7 @@ "AccessConfig": { "id": "AccessConfig", "type": "object", - "description": "An access configuration attached to an instance's network interface.", + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", "properties": { "kind": { "type": "string", @@ -272,6 +272,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -300,6 +301,7 @@ "", "", "", + "", "" ] }, @@ -347,7 +349,7 @@ }, "diskEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the disk using a customer-supplied encryption key. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a new disk using a customer-supplied encryption key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf no customer-supplied encryption key is provided at creation, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." }, "index": { "type": "integer", @@ -396,7 +398,7 @@ }, "source": { "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks. Note that for InstanceTemplate, it is just disk name, not URL for the disk." }, "type": { "type": "string", @@ -445,15 +447,15 @@ }, "diskType": { "type": "string", - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType" + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." }, "sourceImage": { "type": "string", - "description": "The source image used to create this disk.\n\nTo create a disk with a private image, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nTo create a disk with a public image, specify the image name and the project that owns the image. For example, you can use a Debian image from the debian-cloud project:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nThe vYYYYMMDD value is the image version. The fully-qualified URL also works in both examples." + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a private image that you created, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nYou can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-private-family" }, "sourceImageEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. This key is required if the source image is protected by a customer-supplied encryption key.\n\nIf the incorrect key is provided, the operation will fail." + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." } } }, @@ -464,7 +466,7 @@ "properties": { "autoscalingPolicy": { "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.8 or 80%." + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." }, "creationTimestamp": { "type": "string", @@ -494,17 +496,44 @@ ] } }, + "region": { + "type": "string", + "description": "[Output Only] URL of the region where the instance group resides (for autoscalers living in regional scope)." + }, "selfLink": { "type": "string", "description": "[Output Only] Server-defined URL for the resource." }, + "status": { + "type": "string", + "description": "[Output Only] The status of the autoscaler configuration.", + "enum": [ + "ACTIVE", + "DELETING", + "ERROR", + "PENDING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "statusDetails": { + "type": "array", + "description": "[Output Only] Human-readable details about the current state of the autoscaler. Examples: ?Error when fetching replicas: Replica Pool xxx doesn?t exist.? ?Autoscaling capped at min_num_replicas: 2.?", + "items": { + "$ref": "AutoscalerStatusDetails" + } + }, "target": { "type": "string", "description": "URL of the managed instance group that this autoscaler will scale." }, "zone": { "type": "string", - "description": "[Output Only] URL of the zone where the instance group resides." + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." } } }, @@ -570,6 +599,48 @@ } } }, + "AutoscalerStatusDetails": { + "id": "AutoscalerStatusDetails", + "type": "object", + "properties": { + "message": { + "type": "string" + }, + "type": { + "type": "string", + "enum": [ + "ALL_INSTANCES_UNHEALTHY", + "BACKEND_SERVICE_DOES_NOT_EXIST", + "CAPPED_AT_MAX_NUM_REPLICAS", + "CUSTOM_METRIC_DATA_POINTS_TOO_SPARSE", + "CUSTOM_METRIC_INVALID", + "MIN_EQUALS_MAX", + "MISSING_CUSTOM_METRIC_DATA_POINTS", + "MISSING_LOAD_BALANCING_DATA_POINTS", + "MORE_THAN_ONE_BACKEND_SERVICE", + "NOT_ENOUGH_QUOTA_AVAILABLE", + "SCALING_TARGET_DOES_NOT_EXIST", + "UNKNOWN", + "UNSUPPORTED_MAX_RATE_LOAD_BALANCING_CONFIGURATION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, "AutoscalersScopedList": { "id": "AutoscalersScopedList", "type": "object", @@ -592,6 +663,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -620,6 +692,7 @@ "", "", "", + "", "" ] }, @@ -692,7 +765,7 @@ "properties": { "utilizationTarget": { "type": "number", - "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.8.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", "format": "double" } } @@ -746,19 +819,21 @@ "properties": { "balancingMode": { "type": "string", - "description": "Specifies the balancing mode for this backend. For global HTTP(S) load balancing, the default is UTILIZATION. Valid values are UTILIZATION and RATE.", + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nThis cannot be used for internal load balancing.", "enum": [ + "CONNECTION", "RATE", "UTILIZATION" ], "enumDescriptions": [ + "", "", "" ] }, "capacityScaler": { "type": "number", - "description": "A multiplier applied to the group's maximum servicing capacity (either UTILIZATION or RATE). Default value is 1, which means the group will serve up to 100% of its configured CPU or RPS (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available CPU or RPS. Valid range is [0.0,1.0].", + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", "format": "float" }, "description": { @@ -767,21 +842,31 @@ }, "group": { "type": "string", - "description": "The fully-qualified URL of a zonal Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL." + "description": "The fully-qualified URL of a zonal Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be in a zone within the same region as the BackendService." + }, + "maxConnections": { + "type": "integer", + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "maxConnectionsPerInstance": { + "type": "integer", + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" }, "maxRate": { "type": "integer", - "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.", + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", "format": "int32" }, "maxRatePerInstance": { "type": "number", - "description": "The max requests per second (RPS) that a single backend instance can handle.This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.", + "description": "The max requests per second (RPS) that a single backend instance can handle.This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", "format": "float" }, "maxUtilization": { "type": "number", - "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].", + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", "format": "float" } } @@ -791,6 +876,11 @@ "type": "object", "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity.", "properties": { + "affinityCookieTtlSec": { + "type": "integer", + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32" + }, "backends": { "type": "array", "description": "The list of backends that serve this BackendService.", @@ -798,6 +888,9 @@ "$ref": "Backend" } }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, "creationTimestamp": { "type": "string", "description": "[Output Only] Creation timestamp in RFC3339 text format." @@ -808,7 +901,7 @@ }, "enableCDN": { "type": "boolean", - "description": "If true, enable Cloud CDN for this BackendService." + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." }, "fingerprint": { "type": "string", @@ -817,7 +910,7 @@ }, "healthChecks": { "type": "array", - "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required.", + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", "items": { "type": "string" } @@ -832,6 +925,19 @@ "description": "[Output Only] Type of resource. Always compute#backendService for backend services.", "default": "compute#backendService" }, + "loadBalancingScheme": { + "type": "string", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID_LOAD_BALANCING_SCHEME" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, "name": { "type": "string", "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", @@ -839,21 +945,27 @@ }, "port": { "type": "integer", - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", "format": "int32" }, "portName": { "type": "string", - "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required." + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." }, "protocol": { "type": "string", - "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, HTTP2, TCP and SSL.", + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, HTTP2, TCP and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", "enum": [ "HTTP", - "HTTPS" + "HTTPS", + "SSL", + "TCP", + "UDP" ], "enumDescriptions": [ + "", + "", + "", "", "" ] @@ -866,6 +978,24 @@ "type": "string", "description": "[Output Only] Server-defined URL for the resource." }, + "sessionAffinity": { + "type": "string", + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, "timeoutSec": { "type": "integer", "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", @@ -873,6 +1003,38 @@ } } }, + "BackendServiceAggregatedList": { + "id": "BackendServiceAggregatedList", + "type": "object", + "description": "Contains a list of BackendServicesScopedList.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource; defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped BackendService lists.", + "additionalProperties": { + "$ref": "BackendServicesScopedList", + "description": "Name of the scope containing this set of BackendServices." + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#backendServiceAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, "BackendServiceGroupHealth": { "id": "BackendServiceGroupHealth", "type": "object", @@ -897,7 +1059,7 @@ "properties": { "id": { "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + "description": "[Output Only] Unique identifier for the resource; defined by the server." }, "items": { "type": "array", @@ -913,7 +1075,7 @@ }, "nextPageToken": { "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + "description": "[Output Only] A token used to continue a truncated list request." }, "selfLink": { "type": "string", @@ -921,6 +1083,86 @@ } } }, + "BackendServicesScopedList": { + "id": "BackendServicesScopedList", + "type": "object", + "properties": { + "backendServices": { + "type": "array", + "description": "List of BackendServices contained in this scope.", + "items": { + "$ref": "BackendService" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of backend services when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, "CacheInvalidationRule": { "id": "CacheInvalidationRule", "type": "object", @@ -930,6 +1172,18 @@ } } }, + "ConnectionDraining": { + "id": "ConnectionDraining", + "type": "object", + "description": "Message containing connection draining configuration.", + "properties": { + "drainingTimeoutSec": { + "type": "integer", + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32" + } + } + }, "CustomerEncryptionKey": { "id": "CustomerEncryptionKey", "type": "object", @@ -937,15 +1191,29 @@ "properties": { "rawKey": { "type": "string", - "description": "Specifies a 256-bit customer-supplied encryption key, encoded in base64 to either encrypt or decrypt this resource." + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." }, "rsaEncryptedKey": { "type": "string", - "description": "Specifies a base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem" + "description": "Specifies an RFC 4648 base64 encoded, RSA-wrapped 2048-bit customer-supplied encryption key to either encrypt or decrypt this resource.\n\nThe key must meet the following requirements before you can provide it to Compute Engine: \n- The key is wrapped using a RSA public key certificate provided by Google. \n- After being wrapped, the key must be encoded in RFC 4648 base64 encoding. Get the RSA public key certificate provided by Google at:\nhttps://cloud-certs.storage.googleapis.com/google-cloud-csek-ingress.pem" }, "sha256": { "type": "string", - "description": "[Output only] The base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." + } + } + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "type": "object", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "type": "string", + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." } } }, @@ -1001,7 +1269,7 @@ }, "diskEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Encrypts the disk using a customer-supplied encryption key.\n\nIf you encrypt the disk using a customer-supplied encryption key, and you want to use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine), you must provide the same key in your request. If you provide an incorrect key, or no key, the operation will fail.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf no customer-supplied encryption key is provided at creation, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." }, "id": { "type": "string", @@ -1020,7 +1288,7 @@ }, "labels": { "type": "object", - "description": "Labels to apply to this disk. These can be later modified by the setLabels() method. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. A label value can also be empty (e.g. \"example-label\": \"\").", + "description": "Labels to apply to this disk. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", "additionalProperties": { "type": "string" } @@ -1035,7 +1303,7 @@ }, "licenses": { "type": "array", - "description": "[Output Only] Any applicable publicly visible licenses.", + "description": "Any applicable publicly visible licenses.", "items": { "type": "string" } @@ -1069,7 +1337,7 @@ }, "sourceImageEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source image. This key is required if the source image is protected by a customer-supplied encryption key.\n\nIf the incorrect key is provided, the operation will fail." + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." }, "sourceImageId": { "type": "string", @@ -1081,7 +1349,7 @@ }, "sourceSnapshotEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "The customer-supplied encryption key of the source snapshot. This key is required if the source snapshot is protected by a customer-supplied encryption key.\n\nIf the incorrect key is provided, the operation will fail." + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." }, "sourceSnapshotId": { "type": "string", @@ -1194,6 +1462,20 @@ } } }, + "DiskMoveRequest": { + "id": "DiskMoveRequest", + "type": "object", + "properties": { + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the disk. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" + }, + "targetDisk": { + "type": "string", + "description": "The URL of the target disk to move. This can be a full or partial URL. For example, the following are all valid URLs to a disk: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disks/disk \n- projects/project/zones/zone/disks/disk \n- zones/zone/disks/disk" + } + } + }, "DiskType": { "id": "DiskType", "type": "object", @@ -1329,6 +1611,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1357,6 +1640,7 @@ "", "", "", + "", "" ] }, @@ -1418,6 +1702,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1446,6 +1731,7 @@ "", "", "", + "", "" ] }, @@ -1481,17 +1767,17 @@ "properties": { "allowed": { "type": "array", - "description": "The list of rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", "items": { "type": "object", "properties": { "IPProtocol": { "type": "string", - "description": "The IP protocol that is allowed for this rule. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol number." + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol number." }, "ports": { "type": "array", - "description": "An optional list of ports which are allowed. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, connections through any port are allowed\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", "items": { "type": "string" } @@ -1538,14 +1824,14 @@ }, "sourceRanges": { "type": "array", - "description": "The IP address blocks that this rule applies to, expressed in CIDR format. One or both of sourceRanges and sourceTags may be set.\n\nIf both properties are set, an inbound connection is allowed if the range matches the sourceRanges OR the tag of the source matches the sourceTags property. The connection does not need to match both properties.", + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", "items": { "type": "string" } }, "sourceTags": { "type": "array", - "description": "A list of instance tags which this rule applies to. One or both of sourceRanges and sourceTags may be set.\n\nIf both properties are set, an inbound connection is allowed if the range matches the sourceRanges OR the tag of the source matches the sourceTags property. The connection does not need to match both properties.", + "description": "If source tags are specified, the firewall will apply only to traffic with source IP that belongs to a tag listed in source tags. Source tags cannot be used to control traffic to an instance's external IP address. Because tags are associated with an instance, not an IP address. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", "items": { "type": "string" } @@ -1597,11 +1883,11 @@ "properties": { "IPAddress": { "type": "string", - "description": "Value of the reserved IP address that this forwarding rule is serving on behalf of. For global forwarding rules, the address must be a global IP; for regional forwarding rules, the address must live in the same region as the forwarding rule. If left empty (default value), an ephemeral IP from the same scope (global or regional) will be assigned." + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nFor global forwarding rules, the address must be a global IP; for regional forwarding rules, the address must live in the same region as the forwarding rule. By default, this field is empty and an ephemeral IP from the same scope (global or regional) will be assigned.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnetwork configured for the forwarding rule. A reserved address cannot be used. If the field is empty, the IP address will be automatically allocated from the internal IP range of the subnetwork or network configured for this forwarding rule." }, "IPProtocol": { "type": "string", - "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH or SCTP.", + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL\u003c/code, only TCP and UDP are valid.", "enum": [ "AH", "ESP", @@ -1617,6 +1903,10 @@ "" ] }, + "backendService": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the BackendService resource to receive the matched traffic." + }, "creationTimestamp": { "type": "string", "description": "[Output Only] Creation timestamp in RFC3339 text format." @@ -1635,14 +1925,39 @@ "description": "[Output Only] Type of the resource. Always compute#forwardingRule for Forwarding Rule resources.", "default": "compute#forwardingRule" }, + "loadBalancingScheme": { + "type": "string", + "description": "This signifies what the ForwardingRule will be used for and can only take the following values: INTERNAL EXTERNAL The value of INTERNAL means that this will be used for Internal Network Load Balancing (TCP, UDP). The value of EXTERNAL means that this will be used for External Load Balancing (HTTP(S) LB, External TCP/UDP LB, SSL Proxy)", + "enum": [ + "EXTERNAL", + "INTERNAL", + "INVALID" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, "name": { "type": "string", "description": "Name of the resource; provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" }, + "network": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the network that the load balanced IP should belong to for this Forwarding Rule. If this field is not specified, the default network will be used." + }, "portRange": { "type": "string", - "description": "Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges." + "description": "Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nThis field is not used for internal load balancing." + }, + "ports": { + "type": "array", + "description": "This field is not used for external load balancing.\n\nWhen the load balancing scheme is INTERNAL, a single port or a comma separated list of ports can be configured. Only packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. If the port list is not provided then all ports are allowed to pass through.\n\nYou may specify a maximum of up to 5 ports.", + "items": { + "type": "string" + } }, "region": { "type": "string", @@ -1652,9 +1967,13 @@ "type": "string", "description": "[Output Only] Server-defined URL for the resource." }, + "subnetwork": { + "type": "string", + "description": "This field is not used for external load balancing.\n\nFor internal load balancing, this field identifies the subnetwork that the load balanced IP should belong to for this Forwarding Rule.\n\nIf the network specified is in auto subnet mode, this field is optional. However, if the network is in custom subnet mode, a subnetwork must be specified." + }, "target": { "type": "string", - "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of a type appropriate to the target object. For example, TargetHttpProxy requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic." + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of a type appropriate to the target object. For example, TargetHttpProxy requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.\n\nThis field is not used for internal load balancing." } } }, @@ -1742,6 +2061,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1770,6 +2090,7 @@ "", "", "", + "", "" ] }, @@ -1809,13 +2130,257 @@ }, "labels": { "type": "object", - "description": "The labels to set for this resource.", + "description": "A list of labels to apply for this resource. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", "additionalProperties": { "type": "string" } } } }, + "GuestOsFeature": { + "id": "GuestOsFeature", + "type": "object", + "description": "Features supported by the guest os.", + "properties": { + "type": { + "type": "string", + "description": "The type of supported feature..", + "enum": [ + "FEATURE_TYPE_UNSPECIFIED", + "VIRTIO_SCSI_MULTIQUEUE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "HTTP2HealthCheck": { + "id": "HTTP2HealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP/2 health check request. The default value is /." + } + } + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP health check request. The default value is /." + } + } + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTPS health check request. The default value is /." + } + } + }, + "HealthCheck": { + "id": "HealthCheck", + "type": "object", + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "properties": { + "checkIntervalSec": { + "type": "integer", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in 3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Type of the resource.", + "default": "compute#healthCheck" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32" + }, + "type": { + "type": "string", + "description": "Specifies the type of the healthCheck, either TCP, UDP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "unhealthyThreshold": { + "type": "integer", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32" + } + } + }, + "HealthCheckList": { + "id": "HealthCheckList", + "type": "object", + "description": "Contains a list of HealthCheck resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#healthCheckList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, "HealthCheckReference": { "id": "HealthCheckReference", "type": "object", @@ -2087,7 +2652,7 @@ }, "creationTimestamp": { "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "description": "Creation timestamp in RFC3339 text format." }, "deprecated": { "$ref": "DeprecationStatus", @@ -2104,7 +2669,14 @@ }, "family": { "type": "string", - "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated." + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." + }, + "guestOsFeatures": { + "type": "array", + "description": "Features of the guest os, valid for bootable images only.", + "items": { + "$ref": "GuestOsFeature" + } }, "id": { "type": "string", @@ -2113,7 +2685,7 @@ }, "imageEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Encrypts the image using a customer-supplied encryption key.\n\nIf you encrypt an image using a customer-supplied encryption key, and you want to use the image later (e.g. to create a disk from the image), you must provide the same key used encrypt the image in your future request. If you provide an incorrect key, or no key, the operation will fail.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf no customer-supplied encryption key is provided at creation, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." }, "kind": { "type": "string", @@ -2127,14 +2699,14 @@ }, "labels": { "type": "object", - "description": "Labels to apply to this image. These can be later modified by the setLabels() method. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. A label value can also be empty (e.g. \"example-label\": \"\").", + "description": "Labels to apply to this image. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", "additionalProperties": { "type": "string" } }, "licenses": { "type": "array", - "description": "Any applicable publicly visible licenses.", + "description": "Any applicable license URI.", "items": { "type": "string" } @@ -2189,7 +2761,7 @@ }, "sourceDiskEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Specifies the customer-supplied encryption key of the source disk. This key is required if the source disk is protected by a customer-supplied encryption key.\n\nIf the incorrect key is provided the operation will fail." + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." }, "sourceDiskId": { "type": "string", @@ -2322,7 +2894,7 @@ }, "networkInterfaces": { "type": "array", - "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet.", + "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Only one interface is supported per instance.", "items": { "$ref": "NetworkInterface" } @@ -2337,14 +2909,14 @@ }, "serviceAccounts": { "type": "array", - "description": "A list of service accounts, with their specified scopes, authorized for this instance. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Authenticating from Google Compute Engine for more information.", + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", "items": { "$ref": "ServiceAccount" } }, "status": { "type": "string", - "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, and TERMINATED.", + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and TERMINATED.", "enum": [ "PROVISIONING", "RUNNING", @@ -2430,7 +3002,7 @@ }, "id": { "type": "string", - "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "description": "[Output Only] A unique identifier for this instance group. The server generates this identifier.", "format": "uint64" }, "kind": { @@ -2459,6 +3031,10 @@ "type": "string", "description": "The URL of the network to which all instances in the instance group belong." }, + "region": { + "type": "string", + "description": "The URL of the region where the instance group is located (for regional resources)." + }, "selfLink": { "type": "string", "description": "[Output Only] The URL for this instance group. The server generates this URL." @@ -2474,7 +3050,7 @@ }, "zone": { "type": "string", - "description": "[Output Only] The URL of the zone where the instance group is located." + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." } } }, @@ -2543,6 +3119,7 @@ "InstanceGroupManager": { "id": "InstanceGroupManager", "type": "object", + "description": "An Instance Group Manager resource.", "properties": { "autoHealingPolicies": { "type": "array", @@ -2573,9 +3150,21 @@ "type": "string", "description": "An optional description of this resource. Provide this property when you create the resource." }, + "failoverAction": { + "type": "string", + "description": "The action to perform in case of zone failure (set only for Regional instance group managers).", + "enum": [ + "NO_FAILOVER", + "UNKNOWN" + ], + "enumDescriptions": [ + "", + "" + ] + }, "fingerprint": { "type": "string", - "description": "[Output Only] The fingerprint of the target pools information. You can use this optional field for optimistic locking when you update the target pool entries.", + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", "format": "byte" }, "id": { @@ -2589,12 +3178,7 @@ }, "instanceTemplate": { "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." }, "kind": { "type": "string", @@ -2618,6 +3202,10 @@ "$ref": "NamedPort" } }, + "region": { + "type": "string", + "description": "[Output Only] The URL of the region where the managed instance group resides (for regional resources)." + }, "selfLink": { "type": "string", "description": "[Output Only] The URL for this managed instance group. The server defines this URL." @@ -2641,7 +3229,7 @@ }, "zone": { "type": "string", - "description": "The name of the zone where the managed instance group is located." + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." } } }, @@ -2656,7 +3244,12 @@ }, "creating": { "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create one of these instances, it tries again until it creates the instance successfully.", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32" + }, + "creatingWithoutRetries": { + "type": "integer", + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's target_size value accordingly.", "format": "int32" }, "deleting": { @@ -2727,7 +3320,7 @@ }, "initialDelaySec": { "type": "integer", - "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely.", + "description": "The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. This initial delay allows instances to initialize and run their startup scripts before the instance group determines that they are UNHEALTHY. This prevents the managed instance group from recreating its instances prematurely. This value must be from range [0, 3600].", "format": "int32" } } @@ -2815,6 +3408,21 @@ } } }, + "InstanceGroupManagersResizeAdvancedRequest": { + "id": "InstanceGroupManagersResizeAdvancedRequest", + "type": "object", + "properties": { + "noCreationRetries": { + "type": "boolean", + "description": "If this flag is true, the managed instance group attempts to create all instances initiated by this resize request only once. If there is an error during creation, the managed instance group does not retry create this instance, and we will decrease the targetSize of the request instead. If the flag is false, the group attemps to recreate each instance continuously until it succeeds.\n\nThis flag matters only in the first attempt of creation of an instance. After an instance is successfully created while this flag is enabled, the instance behaves the same way as all the other instances created with a regular resize request. In particular, if a running instance dies unexpectedly at a later time and needs to be recreated, this mode does not affect the recreation behavior in that scenario.\n\nThis flag is applicable only to the current resize request. It does not influence other resize requests in any way.\n\nYou can see which instances is being creating in which mode by calling the get or listManagedInstances API." + }, + "targetSize": { + "type": "integer", + "description": "The number of running instances that the managed instance group should maintain at any given time. The group automatically adds or removes instances to maintain the number of instances specified by this parameter.", + "format": "int32" + } + } + }, "InstanceGroupManagersScopedList": { "id": "InstanceGroupManagersScopedList", "type": "object", @@ -2837,6 +3445,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -2865,6 +3474,7 @@ "", "", "", + "", "" ] }, @@ -2952,7 +3562,7 @@ "properties": { "id": { "type": "string", - "description": "[Output Only] A unique identifier for this list of instance groups. The server generates this identifier." + "description": "[Output Only] A unique identifier for this list of instances in the specified instance group. The server generates this identifier." }, "items": { "type": "array", @@ -2963,7 +3573,7 @@ }, "kind": { "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for lists of instance groups.", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", "default": "compute#instanceGroupsListInstances" }, "nextPageToken": { @@ -2972,7 +3582,7 @@ }, "selfLink": { "type": "string", - "description": "[Output Only] The URL for this list of instance groups. The server generates this URL." + "description": "[Output Only] The URL for this list of instances in the specified instance groups. The server generates this URL." } } }, @@ -3029,6 +3639,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3057,6 +3668,7 @@ "", "", "", + "", "" ] }, @@ -3134,6 +3746,20 @@ } } }, + "InstanceMoveRequest": { + "id": "InstanceMoveRequest", + "type": "object", + "properties": { + "destinationZone": { + "type": "string", + "description": "The URL of the destination zone to move the instance. This can be a full or partial URL. For example, the following are all valid URLs to a zone: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone \n- projects/project/zones/zone \n- zones/zone" + }, + "targetInstance": { + "type": "string", + "description": "The URL of the target instance to move. This can be a full or partial URL. For example, the following are all valid URLs to an instance: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/instances/instance \n- projects/project/zones/zone/instances/instance \n- zones/zone/instances/instance" + } + } + }, "InstanceProperties": { "id": "InstanceProperties", "type": "object", @@ -3141,7 +3767,7 @@ "properties": { "canIpForward": { "type": "boolean", - "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the canIpForward documentation for more information." + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding for instances documentation for more information." }, "description": { "type": "string", @@ -3154,6 +3780,13 @@ "$ref": "AttachedDisk" } }, + "labels": { + "type": "object", + "description": "Labels to apply to instances that are created from this template. Each label key/value pair must comply with RFC1035. Label values may be empty.", + "additionalProperties": { + "type": "string" + } + }, "machineType": { "type": "string", "description": "The machine type to use for instances that are created from this template.", @@ -3338,6 +3971,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3366,6 +4000,7 @@ "", "", "", + "", "" ] }, @@ -3405,7 +4040,7 @@ }, "labels": { "type": "object", - "description": "The new labels for the resource, in the form of key/value pairs.", + "description": "A list of labels to apply for this instance. Changing instance labels will also change the instance tags.\n\nEach label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. For example, \"webserver-frontend\": \"images\". A label value can also be empty (e.g. \"my-label\": \"\").", "additionalProperties": { "type": "string" } @@ -3422,6 +4057,19 @@ } } }, + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "type": "object", + "properties": { + "disks": { + "type": "array", + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + } + } + } + }, "License": { "id": "License", "type": "object", @@ -3479,6 +4127,10 @@ "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", "format": "uint64" }, + "isSharedCpu": { + "type": "boolean", + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." + }, "kind": { "type": "string", "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", @@ -3598,6 +4250,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3626,6 +4279,7 @@ "", "", "", + "", "" ] }, @@ -3660,10 +4314,11 @@ "properties": { "currentAction": { "type": "string", - "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's target_size value is decreased. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", "enum": [ "ABANDONING", "CREATING", + "CREATING_WITHOUT_RETRIES", "DELETING", "NONE", "RECREATING", @@ -3677,6 +4332,7 @@ "", "", "", + "", "" ] }, @@ -3882,7 +4538,7 @@ "properties": { "accessConfigs": { "type": "array", - "description": "An array of configurations for this interface. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", "items": { "$ref": "AccessConfig" } @@ -3902,11 +4558,11 @@ }, "networkIP": { "type": "string", - "description": "[Output Only] An optional IPV4 internal network address assigned to the instance for this network interface." + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." }, "subnetwork": { "type": "string", - "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/subnetworks/subnetwork \n- zones/zone/subnetworks/subnetwork" + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" } } }, @@ -4081,6 +4737,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -4109,6 +4766,7 @@ "", "", "", + "", "" ] }, @@ -4226,6 +4884,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -4254,6 +4913,7 @@ "", "", "", + "", "" ] }, @@ -4414,6 +5074,9 @@ "IN_USE_ADDRESSES", "LOCAL_SSD_TOTAL_GB", "NETWORKS", + "PREEMPTIBLE_CPUS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", "ROUTERS", "ROUTES", "SNAPSHOTS", @@ -4425,6 +5088,7 @@ "TARGET_HTTP_PROXIES", "TARGET_INSTANCES", "TARGET_POOLS", + "TARGET_SSL_PROXIES", "TARGET_VPN_GATEWAYS", "URL_MAPS", "VPN_TUNNELS" @@ -4458,6 +5122,10 @@ "", "", "", + "", + "", + "", + "", "" ] }, @@ -4531,6 +5199,262 @@ } } }, + "RegionAutoscalerList": { + "id": "RegionAutoscalerList", + "type": "object", + "description": "Contains a list of autoscalers.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of autoscalers.", + "items": { + "$ref": "Autoscaler" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#regionAutoscalerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RegionInstanceGroupList": { + "id": "RegionInstanceGroupList", + "type": "object", + "description": "Contains a list of InstanceGroup resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of InstanceGroup resources.", + "items": { + "$ref": "InstanceGroup" + } + }, + "kind": { + "type": "string", + "description": "The resource type.", + "default": "compute#regionInstanceGroupList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] The URL for this resource type. The server generates this URL." + } + } + }, + "RegionInstanceGroupManagerList": { + "id": "RegionInstanceGroupManagerList", + "type": "object", + "description": "Contains a list of managed instance groups.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of managed instance groups.", + "items": { + "$ref": "InstanceGroupManager" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] The resource type, which is always compute#instanceGroupManagerList for a list of managed instance groups that exist in th regional scope.", + "default": "compute#regionInstanceGroupManagerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output only] A token used to continue a truncated list request." + }, + "selfLink": { + "type": "string", + "description": "[Output only] The URL for this resource type. The server generates this URL." + } + } + }, + "RegionInstanceGroupManagersAbandonInstancesRequest": { + "id": "RegionInstanceGroupManagersAbandonInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The names of one or more instances to abandon.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersDeleteInstancesRequest": { + "id": "RegionInstanceGroupManagersDeleteInstancesRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The names of one or more instances to delete.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersListInstancesResponse": { + "id": "RegionInstanceGroupManagersListInstancesResponse", + "type": "object", + "properties": { + "managedInstances": { + "type": "array", + "description": "List of managed instances.", + "items": { + "$ref": "ManagedInstance" + } + } + } + }, + "RegionInstanceGroupManagersRecreateRequest": { + "id": "RegionInstanceGroupManagersRecreateRequest", + "type": "object", + "properties": { + "instances": { + "type": "array", + "description": "The URL for one or more instances to recreate.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersSetAutoHealingRequest": { + "id": "RegionInstanceGroupManagersSetAutoHealingRequest", + "type": "object", + "properties": { + "autoHealingPolicies": { + "type": "array", + "items": { + "$ref": "InstanceGroupManagerAutoHealingPolicy" + } + } + } + }, + "RegionInstanceGroupManagersSetTargetPoolsRequest": { + "id": "RegionInstanceGroupManagersSetTargetPoolsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "Fingerprint of the target pools information, which is a hash of the contents. This field is used for optimistic locking when you update the target pool entries. This field is optional.", + "format": "byte" + }, + "targetPools": { + "type": "array", + "description": "The URL of all TargetPool resources to which instances in the instanceGroup field are added. The target pools automatically apply to all of the instances in the managed instance group.", + "items": { + "type": "string" + } + } + } + }, + "RegionInstanceGroupManagersSetTemplateRequest": { + "id": "RegionInstanceGroupManagersSetTemplateRequest", + "type": "object", + "properties": { + "instanceTemplate": { + "type": "string", + "description": "URL of the InstanceTemplate resource from which all new instances will be created." + } + } + }, + "RegionInstanceGroupsListInstances": { + "id": "RegionInstanceGroupsListInstances", + "type": "object", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] Unique identifier for the resource. Defined by the server." + }, + "items": { + "type": "array", + "description": "A list of instances and any named ports that are assigned to those instances.", + "items": { + "$ref": "InstanceWithNamedPorts" + } + }, + "kind": { + "type": "string", + "description": "The resource type.", + "default": "compute#regionInstanceGroupsListInstances" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RegionInstanceGroupsListInstancesRequest": { + "id": "RegionInstanceGroupsListInstancesRequest", + "type": "object", + "properties": { + "instanceState": { + "type": "string", + "description": "Instances in which state should be returned. Valid options are: 'ALL', 'RUNNING'. By default, it lists all instances.", + "enum": [ + "ALL", + "RUNNING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "portName": { + "type": "string", + "description": "Name of port user is interested in. It is optional. If it is set, only information about this ports will be returned. If it is not set, all the named ports will be returned. Always lists all instances.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + } + }, + "RegionInstanceGroupsSetNamedPortsRequest": { + "id": "RegionInstanceGroupsSetNamedPortsRequest", + "type": "object", + "properties": { + "fingerprint": { + "type": "string", + "description": "The fingerprint of the named ports information for this instance group. Use this optional property to prevent conflicts when multiple users change the named ports settings concurrently. Obtain the fingerprint with the instanceGroups.get method. Then, include the fingerprint in your request to ensure that you do not overwrite changes that were applied from another concurrent request.", + "format": "byte" + }, + "namedPorts": { + "type": "array", + "description": "The list of named ports to set for this instance group.", + "items": { + "$ref": "NamedPort" + } + } + } + }, "RegionList": { "id": "RegionList", "type": "object", @@ -4682,6 +5606,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -4710,6 +5635,7 @@ "", "", "", + "", "" ] }, @@ -4776,10 +5702,12 @@ "description": "Router resource.", "properties": { "bgp": { - "$ref": "RouterBgp" + "$ref": "RouterBgp", + "description": "BGP information specific to this router." }, "bgpPeers": { "type": "array", + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", "items": { "$ref": "RouterBgpPeer" } @@ -4799,6 +5727,7 @@ }, "interfaces": { "type": "array", + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel) or IP address and IP address range (e.g. ipRange).", "items": { "$ref": "RouterInterface" } @@ -4883,7 +5812,6 @@ "RouterBgpPeer": { "id": "RouterBgpPeer", "type": "object", - "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Reference: https://tools.ietf.org/html/rfc4273", "properties": { "advertisedRoutePriority": { "type": "integer", @@ -4917,7 +5845,6 @@ "RouterInterface": { "id": "RouterInterface", "type": "object", - "description": "Router interfaces. Each interface requires either one linked resource (e.g. linked_vpn_tunnel) or IP address + range (specified in ip_range).", "properties": { "ipRange": { "type": "string", @@ -4971,7 +5898,7 @@ "properties": { "bestRoutes": { "type": "array", - "description": "Best routes for this router.", + "description": "Best routes for this router's network.", "items": { "$ref": "Route" } @@ -5062,6 +5989,16 @@ } } }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "type": "object", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + } + }, "RoutersScopedList": { "id": "RoutersScopedList", "type": "object", @@ -5084,6 +6021,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5112,6 +6050,7 @@ "", "", "", + "", "" ] }, @@ -5140,6 +6079,41 @@ } } }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, "Scheduling": { "id": "Scheduling", "type": "object", @@ -5250,7 +6224,7 @@ }, "labels": { "type": "object", - "description": "Labels to apply to this snapshot. These can be later modified by the setLabels() method. Each label key & value must comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash. A label value can also be empty (e.g. \"example-label\": \"\").", + "description": "Labels to apply to this snapshot. These can be later modified by the setLabels method. Each label key/value pair must comply with RFC1035. Label values may be empty.", "additionalProperties": { "type": "string" } @@ -5273,7 +6247,7 @@ }, "snapshotEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nIf you encrypt a snapshot using a customer-supplied encryption key and you want to use the snapshot later, you must provide the same key that you used to encrypt the snapshot. For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request. If you provide an incorrect key, or no key, the request will fail.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf no customer-supplied encryption key is provided at creation, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." }, "sourceDisk": { "type": "string", @@ -5281,7 +6255,7 @@ }, "sourceDiskEncryptionKey": { "$ref": "CustomerEncryptionKey", - "description": "Specifies the customer-supplied encryption key of the source disk. This key is required if the source disk is protected by a customer-supplied encryption key.\n\nIf the incorrect key is provided, the request will fail." + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." }, "sourceDiskId": { "type": "string", @@ -5470,7 +6444,7 @@ }, "region": { "type": "string", - "description": "[Output Only] URL of the region where the Subnetwork resides." + "description": "URL of the region where the Subnetwork resides." }, "selfLink": { "type": "string", @@ -5540,6 +6514,16 @@ } } }, + "SubnetworksExpandIpCidrRangeRequest": { + "id": "SubnetworksExpandIpCidrRangeRequest", + "type": "object", + "properties": { + "ipCidrRange": { + "type": "string", + "description": "The IP (in CIDR format or netmask) of internal addresses that are legal on this Subnetwork. This range should be disjoint from other subnetworks within this network. This range can only be larger than (i.e. a superset of) the range previously defined before the update." + } + } + }, "SubnetworksScopedList": { "id": "SubnetworksScopedList", "type": "object", @@ -5562,6 +6546,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5590,6 +6575,7 @@ "", "", "", + "", "" ] }, @@ -5618,6 +6604,41 @@ } } }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, "Tags": { "id": "Tags", "type": "object", @@ -5931,6 +6952,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5959,6 +6981,7 @@ "", "", "", + "", "" ] }, @@ -6051,10 +7074,14 @@ "description": "Sesssion affinity option, must be one of the following values:\nNONE: Connections from the same client IP may go to any instance in the pool.\nCLIENT_IP: Connections from the same client IP will go to the same instance in the pool while that instance remains healthy.\nCLIENT_IP_PROTO: Connections from the same client IP with the same IP protocol will go to the same instance in the pool while that instance remains healthy.", "enum": [ "CLIENT_IP", + "CLIENT_IP_PORT_PROTO", "CLIENT_IP_PROTO", + "GENERATED_COOKIE", "NONE" ], "enumDescriptions": [ + "", + "", "", "", "" @@ -6215,6 +7242,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -6243,6 +7271,7 @@ "", "", "", + "", "" ] }, @@ -6280,6 +7309,135 @@ } } }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "type": "object", + "properties": { + "service": { + "type": "string", + "description": "The URL of the new BackendService resource for the targetSslProxy." + } + } + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "type": "object", + "properties": { + "proxyHeader": { + "type": "string", + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "type": "object", + "properties": { + "sslCertificates": { + "type": "array", + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxy": { + "id": "TargetSslProxy", + "type": "object", + "description": "A TargetSslProxy resource. This resource defines an SSL proxy.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "default": "compute#targetSslProxy" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "service": { + "type": "string", + "description": "URL to the BackendService resource." + }, + "sslCertificates": { + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxyList": { + "id": "TargetSslProxyList", + "type": "object", + "description": "Contains a list of TargetSslProxy resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetSslProxyList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, "TargetVpnGateway": { "id": "TargetVpnGateway", "type": "object", @@ -6446,6 +7604,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -6474,6 +7633,7 @@ "", "", "", + "", "" ] }, @@ -6603,7 +7763,7 @@ }, "tests": { "type": "array", - "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only all of the test cases pass.", + "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", "items": { "$ref": "UrlMapTest" } @@ -6790,6 +7950,13 @@ "type": "string", "description": "[Output Only] URL of the region where the VPN tunnel resides." }, + "remoteTrafficSelector": { + "type": "array", + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint.", + "items": { + "type": "string" + } + }, "router": { "type": "string", "description": "URL of router resource to be used for dynamic routing." @@ -6933,6 +8100,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -6961,6 +8129,7 @@ "", "", "", + "", "" ] }, @@ -7103,7 +8272,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7129,7 +8298,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7162,7 +8331,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -7203,7 +8372,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -7238,7 +8407,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -7272,7 +8441,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7298,7 +8467,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -7332,7 +8501,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -7379,7 +8548,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7405,7 +8574,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7438,7 +8607,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7479,7 +8648,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7514,7 +8683,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7548,7 +8717,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7574,7 +8743,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7615,7 +8784,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7652,7 +8821,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -7703,7 +8872,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7733,6 +8902,56 @@ }, "backendServices": { "methods": { + "aggregatedList": { + "id": "compute.backendServices.aggregatedList", + "path": "{project}/aggregated/backendServices", + "httpMethod": "GET", + "description": "Retrieves the list of all BackendService resources, regional and global, available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Name of the project scoping this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "BackendServiceAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "delete": { "id": "compute.backendServices.delete", "path": "{project}/global/backendServices/{backendService}", @@ -7750,7 +8969,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7783,7 +9002,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7816,7 +9035,7 @@ "project": { "type": "string", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7846,7 +9065,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7872,7 +9091,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7898,7 +9117,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7931,7 +9150,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7960,7 +9179,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -8004,7 +9223,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8035,7 +9254,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8061,7 +9280,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8094,7 +9313,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8127,7 +9346,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8153,7 +9372,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8189,7 +9408,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8215,7 +9434,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8248,7 +9467,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8285,14 +9504,13 @@ "type": "string", "description": "Name of the persistent disk to delete.", "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "location": "path" }, "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8333,7 +9551,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8368,7 +9586,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sourceImage": { @@ -8407,7 +9625,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8433,7 +9651,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8474,7 +9692,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -8505,13 +9723,13 @@ "id": "compute.disks.setLabels", "path": "{project}/zones/{zone}/disks/{resource}/setLabels", "httpMethod": "POST", - "description": "Sets the labels on the target disk.", + "description": "Sets the labels on a disk. To learn more about labels, read the Labeling or Tagging Resources documentation.", "parameters": { "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -8555,7 +9773,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -8611,7 +9829,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8644,7 +9862,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8671,7 +9889,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8697,7 +9915,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8723,7 +9941,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8756,7 +9974,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8785,7 +10003,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -8829,7 +10047,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8860,7 +10078,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8886,7 +10104,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8919,7 +10137,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8960,7 +10178,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8995,7 +10213,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -9029,7 +10247,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9055,7 +10273,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -9096,7 +10314,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -9133,7 +10351,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -9189,7 +10407,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9222,7 +10440,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9249,7 +10467,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9275,7 +10493,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9301,7 +10519,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9327,7 +10545,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -9375,7 +10593,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9408,7 +10626,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9435,7 +10653,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9461,7 +10679,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9487,7 +10705,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9520,7 +10738,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9549,7 +10767,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -9588,7 +10806,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9614,7 +10832,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9647,7 +10865,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9677,7 +10895,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9702,7 +10920,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9728,7 +10946,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9746,6 +10964,264 @@ } } }, + "healthChecks": { + "methods": { + "delete": { + "id": "compute.healthChecks.delete", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "DELETE", + "description": "Deletes the specified HealthCheck resource.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.healthChecks.get", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "GET", + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.healthChecks.insert", + "path": "{project}/global/healthChecks", + "httpMethod": "POST", + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.healthChecks.list", + "path": "{project}/global/healthChecks", + "httpMethod": "GET", + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.healthChecks.patch", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PATCH", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.healthChecks.testIamPermissions", + "path": "{project}/global/healthChecks/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.healthChecks.update", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PUT", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "httpHealthChecks": { "methods": { "delete": { @@ -9765,7 +11241,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9798,7 +11274,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9825,7 +11301,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9851,7 +11327,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9877,7 +11353,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9910,7 +11386,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9939,7 +11415,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -9983,7 +11459,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10023,7 +11499,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10056,7 +11532,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10083,7 +11559,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10109,7 +11585,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10135,7 +11611,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10168,7 +11644,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10197,7 +11673,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -10241,7 +11717,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10281,7 +11757,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10314,7 +11790,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10350,7 +11826,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10375,7 +11851,7 @@ "parameters": { "family": { "type": "string", - "description": "Name of the image resource to return.", + "description": "Name of the image family to search for.", "required": true, "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "location": "path" @@ -10384,7 +11860,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10411,7 +11887,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10436,11 +11912,11 @@ "id": "compute.images.list", "path": "{project}/global/images", "httpMethod": "GET", - "description": "Retrieves the list of private images available to the specified project. Private images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 7. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.\n\nSee Accessing images for more information.", + "description": "Retrieves the list of private images available to the specified project. Private images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10466,7 +11942,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10486,13 +11962,13 @@ "id": "compute.images.setLabels", "path": "{project}/global/images/{resource}/setLabels", "httpMethod": "POST", - "description": "Sets the labels on the target image.", + "description": "Sets the labels on an image. To learn more about labels, read the Labeling or Tagging Resources documentation.", "parameters": { "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -10528,7 +12004,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -10575,7 +12051,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10609,7 +12085,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10635,7 +12111,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10667,7 +12143,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10706,7 +12182,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10748,7 +12224,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10782,7 +12258,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10815,7 +12291,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10841,7 +12317,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10880,7 +12356,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10920,7 +12396,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10962,7 +12438,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "size": { @@ -10993,6 +12469,48 @@ "https://www.googleapis.com/auth/compute" ] }, + "resizeAdvanced": { + "id": "compute.instanceGroupManagers.resizeAdvanced", + "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/resizeAdvanced", + "httpMethod": "POST", + "description": "Resizes the managed instance group with advanced configuration options like disabling creation retries. This is an extended version of the resize method.\n\nIf you increase the size of the instance group, the group creates new instances using the current instance template. If you decrease the size, the group deletes instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating, creatingWithoutRetries, or deleting actions with the get or listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone where the managed instance group is located.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instanceGroupManager" + ], + "request": { + "$ref": "InstanceGroupManagersResizeAdvancedRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "setAutoHealingPolicies": { "id": "compute.instanceGroupManagers.setAutoHealingPolicies", "path": "{project}/zones/{zone}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", @@ -11009,7 +12527,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11051,7 +12569,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11093,7 +12611,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11129,7 +12647,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -11184,7 +12702,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11218,7 +12736,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11244,7 +12762,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11276,7 +12794,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11315,7 +12833,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11349,7 +12867,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11382,7 +12900,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11408,7 +12926,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11439,7 +12957,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "instanceGroup": { @@ -11471,7 +12989,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11514,7 +13032,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11556,7 +13074,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11592,7 +13110,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -11648,7 +13166,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11681,7 +13199,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11708,7 +13226,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11734,7 +13252,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11760,7 +13278,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11786,7 +13304,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -11840,7 +13358,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11876,7 +13394,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11902,7 +13420,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11935,7 +13453,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11979,7 +13497,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12032,7 +13550,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12068,7 +13586,6 @@ "type": "string", "description": "Disk device name to detach.", "required": true, - "pattern": "\\w[\\w.-]{0,254}", "location": "query" }, "instance": { @@ -12082,7 +13599,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12124,7 +13641,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12175,7 +13692,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "start": { @@ -12216,7 +13733,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12250,7 +13767,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12276,7 +13793,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12317,7 +13834,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12371,7 +13888,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12401,7 +13918,7 @@ "id": "compute.instances.setLabels", "path": "{project}/zones/{zone}/instances/{instance}/setLabels", "httpMethod": "POST", - "description": "Sets labels for the specified instance to the data included in the request.", + "description": "Sets labels on an instance. To learn more about labels, read the Labeling or Tagging Resources documentation.", "parameters": { "instance": { "type": "string", @@ -12414,7 +13931,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12458,7 +13975,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12502,7 +14019,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12546,7 +14063,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12590,7 +14107,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12634,7 +14151,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12658,6 +14175,50 @@ "https://www.googleapis.com/auth/compute" ] }, + "startWithEncryptionKey": { + "id": "compute.instances.startWithEncryptionKey", + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "httpMethod": "POST", + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to start.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "stop": { "id": "compute.instances.stop", "path": "{project}/zones/{zone}/instances/{instance}/stop", @@ -12675,7 +14236,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12709,7 +14270,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -12765,7 +14326,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12794,7 +14355,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12820,7 +14381,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12853,7 +14414,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12886,7 +14447,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12912,7 +14473,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -12957,7 +14518,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12990,7 +14551,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13017,7 +14578,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13043,7 +14604,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13069,7 +14630,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13085,6 +14646,39 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "switchToCustomMode": { + "id": "compute.networks.switchToCustomMode", + "path": "{project}/global/networks/{network}/switchToCustomMode", + "httpMethod": "POST", + "description": "Switches the network mode from auto subnet mode to custom subnet mode.", + "parameters": { + "network": { + "type": "string", + "description": "Name of the network to be updated.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "network" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "testIamPermissions": { "id": "compute.networks.testIamPermissions", "path": "{project}/global/networks/{resource}/testIamPermissions", @@ -13095,7 +14689,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -13136,7 +14730,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13152,6 +14746,62 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "moveDisk": { + "id": "compute.projects.moveDisk", + "path": "{project}/moveDisk", + "httpMethod": "POST", + "description": "Moves a persistent disk from one zone to another.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "DiskMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "moveInstance": { + "id": "compute.projects.moveInstance", + "path": "{project}/moveInstance", + "httpMethod": "POST", + "description": "Moves an instance and its attached persistent disks from one zone to another.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "InstanceMoveRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "setCommonInstanceMetadata": { "id": "compute.projects.setCommonInstanceMetadata", "path": "{project}/setCommonInstanceMetadata", @@ -13162,7 +14812,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13190,7 +14840,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13213,6 +14863,1491 @@ } } }, + "regionAutoscalers": { + "methods": { + "delete": { + "id": "compute.regionAutoscalers.delete", + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "DELETE", + "description": "Deletes the specified autoscaler.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionAutoscalers.get", + "path": "{project}/regions/{region}/autoscalers/{autoscaler}", + "httpMethod": "GET", + "description": "Returns the specified autoscaler.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "response": { + "$ref": "Autoscaler" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionAutoscalers.insert", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "POST", + "description": "Creates an autoscaler in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionAutoscalers.list", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "GET", + "description": "Retrieves a list of autoscalers contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionAutoscalerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.regionAutoscalers.patch", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "PATCH", + "description": "Updates a autoscaler in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "autoscaler" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionAutoscalers.testIamPermissions", + "path": "{project}/regions/{region}/autoscalers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionAutoscalers.update", + "path": "{project}/regions/{region}/autoscalers", + "httpMethod": "PUT", + "description": "Updates a autoscaler in the specified project using the data included in the request.", + "parameters": { + "autoscaler": { + "type": "string", + "description": "Name of the autoscaler to update.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Autoscaler" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionBackendServices": { + "methods": { + "delete": { + "id": "compute.regionBackendServices.delete", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "DELETE", + "description": "Deletes the specified regional BackendService resource.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionBackendServices.get", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "GET", + "description": "Returns the specified regional BackendService resource.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "response": { + "$ref": "BackendService" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getHealth": { + "id": "compute.regionBackendServices.getHealth", + "path": "{project}/regions/{region}/backendServices/{backendService}/getHealth", + "httpMethod": "POST", + "description": "Gets the most recent health check results for this regional BackendService.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to which the queried instance belongs.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "ResourceGroupReference" + }, + "response": { + "$ref": "BackendServiceGroupHealth" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionBackendServices.insert", + "path": "{project}/regions/{region}/backendServices", + "httpMethod": "POST", + "description": "Creates a regional BackendService resource in the specified project using the data included in the request. There are several restrictions and guidelines to keep in mind when creating a regional backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionBackendServices.list", + "path": "{project}/regions/{region}/backendServices", + "httpMethod": "GET", + "description": "Retrieves the list of regional BackendService resources available to the specified project in the given region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "BackendServiceList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.regionBackendServices.patch", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "PATCH", + "description": "Update the entire content of the regional BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information. This method supports patch semantics.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionBackendServices.testIamPermissions", + "path": "{project}/regions/{region}/backendServices/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.regionBackendServices.update", + "path": "{project}/regions/{region}/backendServices/{backendService}", + "httpMethod": "PUT", + "description": "Update the entire content of the regional BackendService resource. There are several restrictions and guidelines to keep in mind when updating a backend service. Read Restrictions and Guidelines for more information.", + "parameters": { + "backendService": { + "type": "string", + "description": "Name of the BackendService resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "backendService" + ], + "request": { + "$ref": "BackendService" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "regionInstanceGroupManagers": { + "methods": { + "abandonInstances": { + "id": "compute.regionInstanceGroupManagers.abandonInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/abandonInstances", + "httpMethod": "POST", + "description": "Schedules a group action to remove the specified instances from the managed instance group. Abandoning an instance does not delete the instance, but it does remove the instance from any target pools that are applied by the managed instance group. This method reduces the targetSize of the managed instance group by the number of instances that you abandon. This operation is marked as DONE when the action is scheduled even if the instances have not yet been removed from the group. You must separately verify the status of the abandoning action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersAbandonInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "delete": { + "id": "compute.regionInstanceGroupManagers.delete", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "DELETE", + "description": "Deletes the specified managed instance group and all of the instances in that group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group to delete.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "deleteInstances": { + "id": "compute.regionInstanceGroupManagers.deleteInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/deleteInstances", + "httpMethod": "POST", + "description": "Schedules a group action to delete the specified instances in the managed instance group. The instances are also removed from any target pools of which they were a member. This method reduces the targetSize of the managed instance group by the number of instances that you delete. This operation is marked as DONE when the action is scheduled even if the instances are still being deleted. You must separately verify the status of the deleting action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersDeleteInstancesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.regionInstanceGroupManagers.get", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}", + "httpMethod": "GET", + "description": "Returns all of the details for the specified managed instance group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group to return.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "InstanceGroupManager" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.regionInstanceGroupManagers.insert", + "path": "{project}/regions/{region}/instanceGroupManagers", + "httpMethod": "POST", + "description": "Creates a managed instance group using the information that you specify in the request. After the group is created, it schedules an action to create instances in the group using the specified instance template. This operation is marked as DONE when the group is created even if the instances in the group have not yet been created. You must separately verify the status of the individual instances with the listmanagedinstances method.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "InstanceGroupManager" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.regionInstanceGroupManagers.list", + "path": "{project}/regions/{region}/instanceGroupManagers", + "httpMethod": "GET", + "description": "Retrieves the list of managed instance groups that are contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionInstanceGroupManagerList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listManagedInstances": { + "id": "compute.regionInstanceGroupManagers.listManagedInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/listManagedInstances", + "httpMethod": "POST", + "description": "Lists the instances in the managed instance group and instances that are scheduled to be created. The list includes any current actions that the group has scheduled for its instances.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "response": { + "$ref": "RegionInstanceGroupManagersListInstancesResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "recreateInstances": { + "id": "compute.regionInstanceGroupManagers.recreateInstances", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/recreateInstances", + "httpMethod": "POST", + "description": "Schedules a group action to recreate the specified instances in the managed instance group. The instances are deleted and recreated using the current instance template for the managed instance group. This operation is marked as DONE when the action is scheduled even if the instances have not yet been recreated. You must separately verify the status of the recreating action with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersRecreateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "resize": { + "id": "compute.regionInstanceGroupManagers.resize", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/resize", + "httpMethod": "POST", + "description": "Changes the intended size for the managed instance group. If you increase the size, the group schedules actions to create new instances using the current instance template. If you decrease the size, the group schedules delete actions on one or more instances. The resize operation is marked DONE when the resize actions are scheduled even if the group has not yet added or deleted any instances. You must separately verify the status of the creating or deleting actions with the listmanagedinstances method.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + }, + "size": { + "type": "integer", + "description": "Number of instances that should exist in this instance group manager.", + "required": true, + "format": "int32", + "minimum": "0", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager", + "size" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setAutoHealingPolicies": { + "id": "compute.regionInstanceGroupManagers.setAutoHealingPolicies", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setAutoHealingPolicies", + "httpMethod": "POST", + "description": "Modifies the autohealing policy for the instances in this managed instance group.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetAutoHealingRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setInstanceTemplate": { + "id": "compute.regionInstanceGroupManagers.setInstanceTemplate", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setInstanceTemplate", + "httpMethod": "POST", + "description": "Sets the instance template to use when creating new instances in this group. Existing instances are not affected.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "The name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetTemplateRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setTargetPools": { + "id": "compute.regionInstanceGroupManagers.setTargetPools", + "path": "{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}/setTargetPools", + "httpMethod": "POST", + "description": "Modifies the target pools to which all new instances in this group are assigned. Existing instances in the group are not affected.", + "parameters": { + "instanceGroupManager": { + "type": "string", + "description": "Name of the managed instance group.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroupManager" + ], + "request": { + "$ref": "RegionInstanceGroupManagersSetTargetPoolsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionInstanceGroupManagers.testIamPermissions", + "path": "{project}/regions/{region}/instanceGroupManagers/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "regionInstanceGroups": { + "methods": { + "get": { + "id": "compute.regionInstanceGroups.get", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}", + "httpMethod": "GET", + "description": "Returns the specified instance group resource.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "Name of the instance group resource to return.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "response": { + "$ref": "InstanceGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "list": { + "id": "compute.regionInstanceGroups.list", + "path": "{project}/regions/{region}/instanceGroups", + "httpMethod": "GET", + "description": "Retrieves the list of instance group resources contained within the specified region.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RegionInstanceGroupList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "listInstances": { + "id": "compute.regionInstanceGroups.listInstances", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/listInstances", + "httpMethod": "POST", + "description": "Lists the instances in the specified instance group and displays information about the named ports. Depending on the specified options, this method can list all instances or only the instances that are running.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "instanceGroup": { + "type": "string", + "description": "Name of the regional instance group for which we want to list the instances.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "request": { + "$ref": "RegionInstanceGroupsListInstancesRequest" + }, + "response": { + "$ref": "RegionInstanceGroupsListInstances" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setNamedPorts": { + "id": "compute.regionInstanceGroups.setNamedPorts", + "path": "{project}/regions/{region}/instanceGroups/{instanceGroup}/setNamedPorts", + "httpMethod": "POST", + "description": "Sets the named ports for the specified regional instance group.", + "parameters": { + "instanceGroup": { + "type": "string", + "description": "The name of the regional instance group where the named ports are updated.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "instanceGroup" + ], + "request": { + "$ref": "RegionInstanceGroupsSetNamedPortsRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.regionInstanceGroups.testIamPermissions", + "path": "{project}/regions/{region}/instanceGroups/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "The name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, "regionOperations": { "methods": { "delete": { @@ -13232,7 +16367,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13270,7 +16405,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13303,7 +16438,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13329,7 +16464,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13367,7 +16502,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13399,7 +16534,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13425,7 +16560,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13453,7 +16588,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13479,7 +16614,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13505,7 +16640,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13546,7 +16681,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13588,7 +16723,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13630,7 +16765,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13664,7 +16799,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13690,7 +16825,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13724,7 +16859,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13758,6 +16893,51 @@ "https://www.googleapis.com/auth/compute" ] }, + "preview": { + "id": "compute.routers.preview", + "path": "{project}/regions/{region}/routers/{router}/preview", + "httpMethod": "POST", + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to query.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "testIamPermissions": { "id": "compute.routers.testIamPermissions", "path": "{project}/regions/{region}/routers/{resource}/testIamPermissions", @@ -13768,7 +16948,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13813,7 +16993,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13861,7 +17041,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "route": { @@ -13894,7 +17074,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "route": { @@ -13928,7 +17108,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13954,7 +17134,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13980,7 +17160,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14006,7 +17186,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -14047,7 +17227,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "snapshot": { @@ -14080,7 +17260,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "snapshot": { @@ -14112,7 +17292,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14138,7 +17318,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14158,13 +17338,13 @@ "id": "compute.snapshots.setLabels", "path": "{project}/global/snapshots/{resource}/setLabels", "httpMethod": "POST", - "description": "Sets the labels on the target snapshot.", + "description": "Sets the labels on a snapshot. To learn more about labels, read the Labeling or Tagging Resources documentation.", "parameters": { "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -14200,7 +17380,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -14241,7 +17421,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sslCertificate": { @@ -14274,7 +17454,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sslCertificate": { @@ -14308,7 +17488,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14334,7 +17514,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14360,7 +17540,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14386,7 +17566,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -14425,7 +17605,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14451,7 +17631,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14477,7 +17657,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14508,17 +17688,61 @@ "https://www.googleapis.com/auth/compute" ] }, - "get": { - "id": "compute.subnetworks.get", - "path": "{project}/regions/{region}/subnetworks/{subnetwork}", - "httpMethod": "GET", - "description": "Returns the specified subnetwork. Get a list of available subnetworks by making a list() request.", + "expandIpCidrRange": { + "id": "compute.subnetworks.expandIpCidrRange", + "path": "{project}/regions/{region}/subnetworks/{subnetwork}/expandIpCidrRange", + "httpMethod": "POST", + "description": "Expands the IP CIDR range of the subnetwork to a specified value.", "parameters": { "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "subnetwork": { + "type": "string", + "description": "Name of the Subnetwork resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "subnetwork" + ], + "request": { + "$ref": "SubnetworksExpandIpCidrRangeRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.subnetworks.get", + "path": "{project}/regions/{region}/subnetworks/{subnetwork}", + "httpMethod": "GET", + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14560,7 +17784,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14594,7 +17818,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14620,7 +17844,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14654,7 +17878,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14703,7 +17927,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -14736,7 +17960,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -14770,7 +17994,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14796,7 +18020,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14822,7 +18046,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14848,7 +18072,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -14884,7 +18108,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -14925,7 +18149,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -14958,7 +18182,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -14992,7 +18216,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -15018,7 +18242,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -15044,7 +18268,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -15070,7 +18294,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -15106,7 +18330,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -15142,7 +18366,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -15181,7 +18405,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -15207,7 +18431,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -15233,7 +18457,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetInstance": { @@ -15274,7 +18498,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetInstance": { @@ -15316,7 +18540,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -15350,7 +18574,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -15376,7 +18600,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -15410,7 +18634,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -15459,7 +18683,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15503,7 +18727,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15545,7 +18769,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -15571,7 +18795,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -15597,7 +18821,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15638,7 +18862,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15680,7 +18904,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15725,7 +18949,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15759,7 +18983,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -15785,7 +19009,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15819,7 +19043,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15863,7 +19087,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15913,7 +19137,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15957,7 +19181,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -15994,17 +19218,112 @@ } } }, - "targetVpnGateways": { + "targetSslProxies": { "methods": { - "aggregatedList": { - "id": "compute.targetVpnGateways.aggregatedList", - "path": "{project}/aggregated/targetVpnGateways", + "delete": { + "id": "compute.targetSslProxies.delete", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetSslProxy resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetSslProxies.get", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", "httpMethod": "GET", - "description": "Retrieves an aggregated list of target VPN gateways.", + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetSslProxies.insert", + "path": "{project}/global/targetSslProxies", + "httpMethod": "POST", + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetSslProxies.list", + "path": "{project}/global/targetSslProxies", + "httpMethod": "GET", + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16030,7 +19349,206 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "id": "compute.targetSslProxies.setBackendService", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "httpMethod": "POST", + "description": "Changes the BackendService for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "id": "compute.targetSslProxies.setProxyHeader", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "httpMethod": "POST", + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "id": "compute.targetSslProxies.setSslCertificates", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "httpMethod": "POST", + "description": "Changes SslCertificates for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "testIamPermissions": { + "id": "compute.targetSslProxies.testIamPermissions", + "path": "{project}/global/targetSslProxies/{resource}/testIamPermissions", + "httpMethod": "POST", + "description": "Returns permissions that a caller has on the specified resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "resource": { + "type": "string", + "description": "Name of the resource for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9_]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "resource" + ], + "request": { + "$ref": "TestPermissionsRequest" + }, + "response": { + "$ref": "TestPermissionsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + } + } + }, + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "id": "compute.targetVpnGateways.aggregatedList", + "path": "{project}/aggregated/targetVpnGateways", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target VPN gateways.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "orderBy": { + "type": "string", + "description": "Sorts list results by a certain order. By default, results are returned in alphanumerical order based on the resource name.\n\nYou can also sort results in descending order based on the creation timestamp using orderBy=\"creationTimestamp desc\". This sorts results based on the creationTimestamp field in reverse chronological order (newest result first). Use this to sort resources like operations so that the newest operation is returned first.\n\nCurrently, only sorting by name or creationTimestamp desc is supported.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -16056,7 +19574,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16097,7 +19615,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16139,7 +19657,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16173,7 +19691,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16199,7 +19717,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16233,7 +19751,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16282,7 +19800,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16315,7 +19833,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16349,7 +19867,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -16377,7 +19895,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16411,7 +19929,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16437,7 +19955,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -16463,7 +19981,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16499,7 +20017,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "resource": { @@ -16536,7 +20054,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16572,7 +20090,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -16610,7 +20128,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16636,7 +20154,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -16662,7 +20180,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16703,7 +20221,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16745,7 +20263,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16779,7 +20297,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16805,7 +20323,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16839,7 +20357,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -16895,7 +20413,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -16933,7 +20451,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -16966,7 +20484,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -16992,7 +20510,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -17030,7 +20548,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -17062,7 +20580,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -17088,7 +20606,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, diff --git a/etc/api/compute/v1/compute-api.json b/etc/api/compute/v1/compute-api.json index c56a96f1ce..b1a8517147 100644 --- a/etc/api/compute/v1/compute-api.json +++ b/etc/api/compute/v1/compute-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/P9b4dbHBJNvklJYWy1Z1rmeMosc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/VKavLaSgkeUcGZP86XzgOvq4HAw\"", "discoveryVersion": "v1", "id": "compute:v1", "name": "compute", "version": "v1", - "revision": "20160328", + "revision": "20160908", "title": "Compute Engine API", - "description": "API for the Google Compute Engine service.", + "description": "Creates and runs virtual machines on Google Cloud Platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -94,7 +94,7 @@ "AccessConfig": { "id": "AccessConfig", "type": "object", - "description": "An access configuration attached to an instance's network interface.", + "description": "An access configuration attached to an instance's network interface. Only one access config per instance is supported.", "properties": { "kind": { "type": "string", @@ -272,6 +272,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -300,6 +301,7 @@ "", "", "", + "", "" ] }, @@ -345,6 +347,10 @@ "type": "string", "description": "Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance.\n\nIf not specified, the server chooses a default device name to apply to this disk, in the form persistent-disks-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks." }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts or decrypts a disk using a customer-supplied encryption key.\n\nIf you are creating a new disk, this field encrypts the new disk using an encryption key that you provide. If you are attaching an existing disk that is already encrypted, this field decrypts the disk using the customer-supplied encryption key.\n\nIf you encrypt a disk using a customer-supplied key, you must provide the same key again when you attempt to use this resource at a later time. For example, you must provide the key when you create a snapshot or an image from the disk or when you attach the disk to a virtual machine instance.\n\nIf you do not provide an encryption key, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot use your own keys to encrypt disks in a managed instance group." + }, "index": { "type": "integer", "description": "Assigns a zero-based index to this disk, where 0 is reserved for the boot disk. For example, if you have many disks attached to an instance, each disk would have a unique index number. If not specified, the server will choose an appropriate value.", @@ -392,7 +398,7 @@ }, "source": { "type": "string", - "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks. Note that for InstanceTemplate, it is just disk name, not URL for the disk." }, "type": { "type": "string", @@ -429,11 +435,15 @@ }, "diskType": { "type": "string", - "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType" + "description": "Specifies the disk type to use to create the instance. If not specified, the default is pd-standard, specified using the full URL. For example:\n\nhttps://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/pd-standard \n\nOther values include pd-ssd and local-ssd. If you define this field, you can provide either the full or partial URL. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType \n- projects/project/zones/zone/diskTypes/diskType \n- zones/zone/diskTypes/diskType Note that for InstanceTemplate, this is the name of the disk type, not URL." }, "sourceImage": { "type": "string", - "description": "The source image used to create this disk.\n\nTo create a disk with a private image, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nTo create a disk with a public image, specify the image name and the project that owns the image. For example, you can use a Debian image from the debian-cloud project:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nThe vYYYYMMDD value is the image version. The fully-qualified URL also works in both examples." + "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a private image that you created, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nYou can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-private-family" + }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key.\n\nInstance templates do not store customer-supplied encryption keys, so you cannot create disks for instances in a managed instance group if the source images are encrypted with your own keys." } } }, @@ -444,7 +454,7 @@ "properties": { "autoscalingPolicy": { "$ref": "AutoscalingPolicy", - "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.8 or 80%." + "description": "The configuration parameters for the autoscaling algorithm. You can define one or more of the policies for an autoscaler: cpuUtilization, customMetricUtilizations, and loadBalancingUtilization.\n\nIf none of these are specified, the default will be to autoscale based on cpuUtilization to 0.6 or 60%." }, "creationTimestamp": { "type": "string", @@ -484,7 +494,7 @@ }, "zone": { "type": "string", - "description": "[Output Only] URL of the zone where the instance group resides." + "description": "[Output Only] URL of the zone where the instance group resides (for autoscalers living in zonal scope)." } } }, @@ -572,6 +582,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -600,6 +611,7 @@ "", "", "", + "", "" ] }, @@ -672,7 +684,7 @@ "properties": { "utilizationTarget": { "type": "number", - "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.8.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", + "description": "The target CPU utilization that the autoscaler should maintain. Must be a float value in the range (0, 1]. If not specified, the default is 0.6.\n\nIf the CPU level is below the target utilization, the autoscaler scales down the number of instances until it reaches the minimum number of instances you specified or until the average CPU of your instances reaches the target utilization.\n\nIf the average CPU is above the target utilization, the autoscaler scales up until it reaches the maximum number of instances you specified or until the average utilization reaches the target utilization.", "format": "double" } } @@ -726,19 +738,21 @@ "properties": { "balancingMode": { "type": "string", - "description": "Specifies the balancing mode for this backend. For global HTTP(S) load balancing, the default is UTILIZATION. Valid values are UTILIZATION and RATE.", + "description": "Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).\n\nThis cannot be used for internal load balancing.", "enum": [ + "CONNECTION", "RATE", "UTILIZATION" ], "enumDescriptions": [ + "", "", "" ] }, "capacityScaler": { "type": "number", - "description": "A multiplier applied to the group's maximum servicing capacity (either UTILIZATION or RATE). Default value is 1, which means the group will serve up to 100% of its configured CPU or RPS (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available CPU or RPS. Valid range is [0.0,1.0].", + "description": "A multiplier applied to the group's maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].\n\nThis cannot be used for internal load balancing.", "format": "float" }, "description": { @@ -747,21 +761,31 @@ }, "group": { "type": "string", - "description": "The fully-qualified URL of a zonal Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL." + "description": "The fully-qualified URL of a zonal Instance Group resource. This instance group defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource.\n\nNote that you must specify an Instance Group resource using the fully-qualified URL, rather than a partial URL.\n\nWhen the BackendService has load balancing scheme INTERNAL, the instance group must be in a zone within the same region as the BackendService." + }, + "maxConnections": { + "type": "integer", + "description": "The max number of simultaneous connections for the group. Can be used with either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" + }, + "maxConnectionsPerInstance": { + "type": "integer", + "description": "The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.\n\nThis cannot be used for internal load balancing.", + "format": "int32" }, "maxRate": { "type": "integer", - "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.", + "description": "The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", "format": "int32" }, "maxRatePerInstance": { "type": "number", - "description": "The max requests per second (RPS) that a single backend instance can handle.This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.", + "description": "The max requests per second (RPS) that a single backend instance can handle.This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.\n\nThis cannot be used for internal load balancing.", "format": "float" }, "maxUtilization": { "type": "number", - "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].", + "description": "Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].\n\nThis cannot be used for internal load balancing.", "format": "float" } } @@ -771,6 +795,11 @@ "type": "object", "description": "A BackendService resource. This resource defines a group of backend virtual machines and their serving capacity.", "properties": { + "affinityCookieTtlSec": { + "type": "integer", + "description": "Lifetime of cookies in seconds if session_affinity is GENERATED_COOKIE. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.\n\nWhen the load balancing scheme is INTERNAL, this field is not used.", + "format": "int32" + }, "backends": { "type": "array", "description": "The list of backends that serve this BackendService.", @@ -778,6 +807,9 @@ "$ref": "Backend" } }, + "connectionDraining": { + "$ref": "ConnectionDraining" + }, "creationTimestamp": { "type": "string", "description": "[Output Only] Creation timestamp in RFC3339 text format." @@ -786,6 +818,10 @@ "type": "string", "description": "An optional description of this resource. Provide this property when you create the resource." }, + "enableCDN": { + "type": "boolean", + "description": "If true, enable Cloud CDN for this BackendService.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." + }, "fingerprint": { "type": "string", "description": "Fingerprint of this resource. A hash of the contents stored in this object. This field is used in optimistic locking. This field will be ignored when inserting a BackendService. An up-to-date fingerprint must be provided in order to update the BackendService.", @@ -793,7 +829,7 @@ }, "healthChecks": { "type": "array", - "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required.", + "description": "The list of URLs to the HttpHealthCheck or HttpsHealthCheck resource for health checking this BackendService. Currently at most one health check can be specified, and a health check is required.\n\nFor internal load balancing, a URL to a HealthCheck resource must be specified instead.", "items": { "type": "string" } @@ -815,21 +851,25 @@ }, "port": { "type": "integer", - "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.", + "description": "Deprecated in favor of portName. The TCP port to connect on the backend. The default value is 80.\n\nThis cannot be used for internal load balancing.", "format": "int32" }, "portName": { "type": "string", - "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required." + "description": "Name of backend port. The same name should appear in the instance groups referenced by this service. Required when the load balancing scheme is EXTERNAL.\n\nWhen the load balancing scheme is INTERNAL, this field is not used." }, "protocol": { "type": "string", - "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, HTTP2, TCP and SSL.", + "description": "The protocol this BackendService uses to communicate with backends.\n\nPossible values are HTTP, HTTPS, HTTP2, TCP and SSL. The default is HTTP.\n\nFor internal load balancing, the possible values are TCP and UDP, and the default is TCP.", "enum": [ "HTTP", - "HTTPS" + "HTTPS", + "SSL", + "TCP" ], "enumDescriptions": [ + "", + "", "", "" ] @@ -842,6 +882,22 @@ "type": "string", "description": "[Output Only] Server-defined URL for the resource." }, + "sessionAffinity": { + "type": "string", + "description": "Type of session affinity to use. The default is NONE.\n\nWhen the load balancing scheme is EXTERNAL, can be NONE, CLIENT_IP, or GENERATED_COOKIE.\n\nWhen the load balancing scheme is INTERNAL, can be NONE, CLIENT_IP, CLIENT_IP_PROTO, or CLIENT_IP_PORT_PROTO.\n\nWhen the protocol is UDP, this field is not used.", + "enum": [ + "CLIENT_IP", + "CLIENT_IP_PROTO", + "GENERATED_COOKIE", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, "timeoutSec": { "type": "integer", "description": "How many seconds to wait for the backend before considering it a failed request. Default is 30 seconds.", @@ -873,7 +929,7 @@ "properties": { "id": { "type": "string", - "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + "description": "[Output Only] Unique identifier for the resource; defined by the server." }, "items": { "type": "array", @@ -889,7 +945,7 @@ }, "nextPageToken": { "type": "string", - "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + "description": "[Output Only] A token used to continue a truncated list request." }, "selfLink": { "type": "string", @@ -897,6 +953,56 @@ } } }, + "CacheInvalidationRule": { + "id": "CacheInvalidationRule", + "type": "object", + "properties": { + "path": { + "type": "string" + } + } + }, + "ConnectionDraining": { + "id": "ConnectionDraining", + "type": "object", + "description": "Message containing connection draining configuration.", + "properties": { + "drainingTimeoutSec": { + "type": "integer", + "description": "Time for which instance will be drained (not accept new connections, but still work to finish started).", + "format": "int32" + } + } + }, + "CustomerEncryptionKey": { + "id": "CustomerEncryptionKey", + "type": "object", + "description": "Represents a customer-supplied encryption key", + "properties": { + "rawKey": { + "type": "string", + "description": "Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource." + }, + "sha256": { + "type": "string", + "description": "[Output only] The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource." + } + } + }, + "CustomerEncryptionKeyProtectedDisk": { + "id": "CustomerEncryptionKeyProtectedDisk", + "type": "object", + "properties": { + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Decrypts data associated with the disk with a customer-supplied encryption key." + }, + "source": { + "type": "string", + "description": "Specifies a valid partial or full URL to an existing Persistent Disk resource. This field is only applicable for persistent disks." + } + } + }, "DeprecationStatus": { "id": "DeprecationStatus", "type": "object", @@ -947,6 +1053,10 @@ "type": "string", "description": "An optional description of this resource. Provide this property when you create the resource." }, + "diskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the disk using a customer-supplied encryption key.\n\nAfter you encrypt a disk with a customer-supplied key, you must provide the same key if you use the disk later (e.g. to create a disk snapshot or an image, or to attach the disk to a virtual machine).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the disk, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the disk later." + }, "id": { "type": "string", "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", @@ -967,7 +1077,7 @@ }, "licenses": { "type": "array", - "description": "[Output Only] Any applicable publicly visible licenses.", + "description": "Any applicable publicly visible licenses.", "items": { "type": "string" } @@ -999,6 +1109,10 @@ "type": "string", "description": "The source image used to create this disk. If the source image is deleted, this field will not be set.\n\nTo create a disk with one of the public operating system images, specify the image by its family name. For example, specify family/debian-8 to use the latest Debian 8 image:\n\nprojects/debian-cloud/global/images/family/debian-8 \n\nAlternatively, use a specific version of a public operating system image:\n\nprojects/debian-cloud/global/images/debian-8-jessie-vYYYYMMDD \n\nTo create a disk with a private image that you created, specify the image name in the following format:\n\nglobal/images/my-private-image \n\nYou can also specify a private image by its image family, which returns the latest version of the image in that family. Replace the image name with family/family-name:\n\nglobal/images/family/my-private-family" }, + "sourceImageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source image. Required if the source image is protected by a customer-supplied encryption key." + }, "sourceImageId": { "type": "string", "description": "[Output Only] The ID value of the image used to create this disk. This value identifies the exact image that was used to create this persistent disk. For example, if you created the persistent disk from an image that was later deleted and recreated under the same name, the source image ID would identify the exact version of the image that was used." @@ -1007,6 +1121,10 @@ "type": "string", "description": "The source snapshot used to create this disk. You can provide this as a partial or full URL to the resource. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/global/snapshots/snapshot \n- projects/project/global/snapshots/snapshot \n- global/snapshots/snapshot" }, + "sourceSnapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source snapshot. Required if the source snapshot is protected by a customer-supplied encryption key." + }, "sourceSnapshotId": { "type": "string", "description": "[Output Only] The unique ID of the snapshot used to create this disk. This value identifies the exact snapshot that was used to create this persistent disk. For example, if you created the persistent disk from a snapshot that was later deleted and recreated under the same name, the source snapshot ID would identify the exact version of the snapshot that was used." @@ -1255,6 +1373,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1283,6 +1402,7 @@ "", "", "", + "", "" ] }, @@ -1344,6 +1464,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1372,6 +1493,7 @@ "", "", "", + "", "" ] }, @@ -1407,17 +1529,17 @@ "properties": { "allowed": { "type": "array", - "description": "The list of rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", + "description": "The list of ALLOW rules specified by this firewall. Each rule specifies a protocol and port-range tuple that describes a permitted connection.", "items": { "type": "object", "properties": { "IPProtocol": { "type": "string", - "description": "The IP protocol that is allowed for this rule. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol number." + "description": "The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp), or the IP protocol number." }, "ports": { "type": "array", - "description": "An optional list of ports which are allowed. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, connections through any port are allowed\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", + "description": "An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port.\n\nExample inputs include: [\"22\"], [\"80\",\"443\"], and [\"12345-12349\"].", "items": { "type": "string" } @@ -1464,14 +1586,14 @@ }, "sourceRanges": { "type": "array", - "description": "The IP address blocks that this rule applies to, expressed in CIDR format. One or both of sourceRanges and sourceTags may be set.\n\nIf both properties are set, an inbound connection is allowed if the range matches the sourceRanges OR the tag of the source matches the sourceTags property. The connection does not need to match both properties.", + "description": "If source ranges are specified, the firewall will apply only to traffic that has source IP address in these ranges. These ranges must be expressed in CIDR format. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", "items": { "type": "string" } }, "sourceTags": { "type": "array", - "description": "A list of instance tags which this rule applies to. One or both of sourceRanges and sourceTags may be set.\n\nIf both properties are set, an inbound connection is allowed if the range matches the sourceRanges OR the tag of the source matches the sourceTags property. The connection does not need to match both properties.", + "description": "If source tags are specified, the firewall will apply only to traffic with source IP that belongs to a tag listed in source tags. Source tags cannot be used to control traffic to an instance's external IP address. Because tags are associated with an instance, not an IP address. One or both of sourceRanges and sourceTags may be set. If both properties are set, the firewall will apply to traffic that has source IP address within sourceRanges OR the source IP that belongs to a tag listed in the sourceTags property. The connection does not need to match both properties for the firewall to apply.", "items": { "type": "string" } @@ -1523,11 +1645,11 @@ "properties": { "IPAddress": { "type": "string", - "description": "Value of the reserved IP address that this forwarding rule is serving on behalf of. For global forwarding rules, the address must be a global IP; for regional forwarding rules, the address must live in the same region as the forwarding rule. If left empty (default value), an ephemeral IP from the same scope (global or regional) will be assigned." + "description": "The IP address that this forwarding rule is serving on behalf of.\n\nFor global forwarding rules, the address must be a global IP; for regional forwarding rules, the address must live in the same region as the forwarding rule. By default, this field is empty and an ephemeral IP from the same scope (global or regional) will be assigned.\n\nWhen the load balancing scheme is INTERNAL, this can only be an RFC 1918 IP address belonging to the network/subnetwork configured for the forwarding rule. A reserved address cannot be used. If the field is empty, the IP address will be automatically allocated from the internal IP range of the subnetwork or network configured for this forwarding rule." }, "IPProtocol": { "type": "string", - "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH or SCTP.", + "description": "The IP protocol to which this rule applies. Valid options are TCP, UDP, ESP, AH, SCTP or ICMP.\n\nWhen the load balancing scheme is INTERNAL\u003c/code, only TCP and UDP are valid.", "enum": [ "AH", "ESP", @@ -1568,7 +1690,7 @@ }, "portRange": { "type": "string", - "description": "Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges." + "description": "Applicable only when IPProtocol is TCP, UDP, or SCTP, only packets addressed to ports in the specified range will be forwarded to target. Forwarding rules with the same [IPAddress, IPProtocol] pair must have disjoint port ranges.\n\nThis field is not used for internal load balancing." }, "region": { "type": "string", @@ -1580,7 +1702,7 @@ }, "target": { "type": "string", - "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of a type appropriate to the target object. For example, TargetHttpProxy requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic." + "description": "The URL of the target resource to receive the matched traffic. For regional forwarding rules, this target must live in the same region as the forwarding rule. For global forwarding rules, this target must be a global TargetHttpProxy or TargetHttpsProxy resource. The forwarded traffic must be of a type appropriate to the target object. For example, TargetHttpProxy requires HTTP traffic, and TargetHttpsProxy requires HTTPS traffic.\n\nThis field is not used for internal load balancing." } } }, @@ -1668,6 +1790,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -1696,6 +1819,7 @@ "", "", "", + "", "" ] }, @@ -1724,6 +1848,231 @@ } } }, + "HTTP2HealthCheck": { + "id": "HTTP2HealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP/2 health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP/2 health check request. The default value is /." + } + } + }, + "HTTPHealthCheck": { + "id": "HTTPHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTP health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTP health check request. The default value is /." + } + } + }, + "HTTPSHealthCheck": { + "id": "HTTPSHealthCheck", + "type": "object", + "properties": { + "host": { + "type": "string", + "description": "The value of the host header in the HTTPS health check request. If left empty (default value), the IP on behalf of which this health check is performed will be used." + }, + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "requestPath": { + "type": "string", + "description": "The request path of the HTTPS health check request. The default value is /." + } + } + }, + "HealthCheck": { + "id": "HealthCheck", + "type": "object", + "description": "An HealthCheck resource. This resource defines a template for how individual virtual machines should be checked for health, via one of the supported protocols.", + "properties": { + "checkIntervalSec": { + "type": "integer", + "description": "How often (in seconds) to send a health check. The default value is 5 seconds.", + "format": "int32" + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in 3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "healthyThreshold": { + "type": "integer", + "description": "A so-far unhealthy instance will be marked healthy after this many consecutive successes. The default value is 2.", + "format": "int32" + }, + "http2HealthCheck": { + "$ref": "HTTP2HealthCheck" + }, + "httpHealthCheck": { + "$ref": "HTTPHealthCheck" + }, + "httpsHealthCheck": { + "$ref": "HTTPSHealthCheck" + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Type of the resource.", + "default": "compute#healthCheck" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "sslHealthCheck": { + "$ref": "SSLHealthCheck" + }, + "tcpHealthCheck": { + "$ref": "TCPHealthCheck" + }, + "timeoutSec": { + "type": "integer", + "description": "How long (in seconds) to wait before claiming failure. The default value is 5 seconds. It is invalid for timeoutSec to have greater value than checkIntervalSec.", + "format": "int32" + }, + "type": { + "type": "string", + "description": "Specifies the type of the healthCheck, either TCP, UDP, SSL, HTTP, HTTPS or HTTP2. If not specified, the default is TCP. Exactly one of the protocol-specific health check field must be specified, which must match type field.", + "enum": [ + "HTTP", + "HTTP2", + "HTTPS", + "INVALID", + "SSL", + "TCP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "unhealthyThreshold": { + "type": "integer", + "description": "A so-far healthy instance will be marked unhealthy after this many consecutive failures. The default value is 2.", + "format": "int32" + } + } + }, + "HealthCheckList": { + "id": "HealthCheckList", + "type": "object", + "description": "Contains a list of HealthCheck resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of HealthCheck resources.", + "items": { + "$ref": "HealthCheck" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#healthCheckList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, "HealthCheckReference": { "id": "HealthCheckReference", "type": "object", @@ -1995,7 +2344,7 @@ }, "creationTimestamp": { "type": "string", - "description": "[Output Only] Creation timestamp in RFC3339 text format." + "description": "Creation timestamp in RFC3339 text format." }, "deprecated": { "$ref": "DeprecationStatus", @@ -2010,11 +2359,19 @@ "description": "Size of the image when restored onto a persistent disk (in GB).", "format": "int64" }, + "family": { + "type": "string", + "description": "The name of the image family to which this image belongs. You can create disks by specifying an image family instead of a specific image name. The image family always returns its latest image that is not deprecated. The name of the image family must comply with RFC1035." + }, "id": { "type": "string", "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", "format": "uint64" }, + "imageEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the image using a customer-supplied encryption key.\n\nAfter you encrypt an image with a customer-supplied key, you must provide the same key if you use the image later (e.g. to create a disk from the image).\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the image, then the disk will be encrypted using an automatically generated key and you do not need to provide a key to use the image later." + }, "kind": { "type": "string", "description": "[Output Only] Type of the resource. Always compute#image for images.", @@ -2022,7 +2379,7 @@ }, "licenses": { "type": "array", - "description": "Any applicable publicly visible licenses.", + "description": "Any applicable license URI.", "items": { "type": "string" } @@ -2075,6 +2432,10 @@ "type": "string", "description": "URL of the The source disk used to create this image. This can be a full or valid partial URL. You must provide either this property or the rawDisk.source property but not both to create an image. For example, the following are valid values: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/disk/disk \n- projects/project/zones/zone/disk/disk \n- zones/zone/disks/disk" }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, "sourceDiskId": { "type": "string", "description": "The ID value of the disk used to create this image. This value may be used to determine whether the image was taken from the current or a previous instance of a given disk name." @@ -2194,7 +2555,7 @@ }, "networkInterfaces": { "type": "array", - "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet.", + "description": "An array of configurations for this interface. This specifies how this interface is configured to interact with other network services, such as connecting to the internet. Only one interface is supported per instance.", "items": { "$ref": "NetworkInterface" } @@ -2209,14 +2570,14 @@ }, "serviceAccounts": { "type": "array", - "description": "A list of service accounts, with their specified scopes, authorized for this instance. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Authenticating from Google Compute Engine for more information.", + "description": "A list of service accounts, with their specified scopes, authorized for this instance. Service accounts generate access tokens that can be accessed through the metadata server and used to authenticate applications on the instance. See Service Accounts for more information.", "items": { "$ref": "ServiceAccount" } }, "status": { "type": "string", - "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, and TERMINATED.", + "description": "[Output Only] The status of the instance. One of the following values: PROVISIONING, STAGING, RUNNING, STOPPING, SUSPENDING, SUSPENDED, and TERMINATED.", "enum": [ "PROVISIONING", "RUNNING", @@ -2302,7 +2663,7 @@ }, "id": { "type": "string", - "description": "[Output Only] A unique identifier for this resource type. The server generates this identifier.", + "description": "[Output Only] A unique identifier for this instance group. The server generates this identifier.", "format": "uint64" }, "kind": { @@ -2346,7 +2707,7 @@ }, "zone": { "type": "string", - "description": "[Output Only] The URL of the zone where the instance group is located." + "description": "[Output Only] The URL of the zone where the instance group is located (for zonal resources)." } } }, @@ -2415,6 +2776,7 @@ "InstanceGroupManager": { "id": "InstanceGroupManager", "type": "object", + "description": "An Instance Group Manager resource.", "properties": { "baseInstanceName": { "type": "string", @@ -2440,7 +2802,7 @@ }, "fingerprint": { "type": "string", - "description": "[Output Only] The fingerprint of the target pools information. You can use this optional field for optimistic locking when you update the target pool entries.", + "description": "[Output Only] The fingerprint of the resource data. You can use this optional field for optimistic locking when you update the resource.", "format": "byte" }, "id": { @@ -2454,12 +2816,7 @@ }, "instanceTemplate": { "type": "string", - "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group.", - "annotations": { - "required": [ - "compute.instanceGroupManagers.insert" - ] - } + "description": "The URL of the instance template that is specified for this managed instance group. The group uses this template to create all new instances in the managed instance group." }, "kind": { "type": "string", @@ -2506,7 +2863,7 @@ }, "zone": { "type": "string", - "description": "The name of the zone where the managed instance group is located." + "description": "[Output Only] The URL of the zone where the managed instance group is located (for zonal resources)." } } }, @@ -2521,7 +2878,12 @@ }, "creating": { "type": "integer", - "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create one of these instances, it tries again until it creates the instance successfully.", + "description": "[Output Only] The number of instances in the managed instance group that are scheduled to be created or are currently being created. If the group fails to create any of these instances, it tries again until it creates the instance successfully.\n\nIf you have disabled creation retries, this field will not be populated; instead, the creatingWithoutRetries field will be populated.", + "format": "int32" + }, + "creatingWithoutRetries": { + "type": "integer", + "description": "[Output Only] The number of instances that the managed instance group will attempt to create. The group attempts to create each instance only once. If the group fails to create any of these instances, it decreases the group's target_size value accordingly.", "format": "int32" }, "deleting": { @@ -2687,6 +3049,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -2715,6 +3078,7 @@ "", "", "", + "", "" ] }, @@ -2790,7 +3154,7 @@ "properties": { "id": { "type": "string", - "description": "[Output Only] A unique identifier for this list of instance groups. The server generates this identifier." + "description": "[Output Only] A unique identifier for this list of instances in the specified instance group. The server generates this identifier." }, "items": { "type": "array", @@ -2801,7 +3165,7 @@ }, "kind": { "type": "string", - "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for lists of instance groups.", + "description": "[Output Only] The resource type, which is always compute#instanceGroupsListInstances for the list of instances in the specified instance group.", "default": "compute#instanceGroupsListInstances" }, "nextPageToken": { @@ -2810,7 +3174,7 @@ }, "selfLink": { "type": "string", - "description": "[Output Only] The URL for this list of instance groups. The server generates this URL." + "description": "[Output Only] The URL for this list of instances in the specified instance groups. The server generates this URL." } } }, @@ -2867,6 +3231,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -2895,6 +3260,7 @@ "", "", "", + "", "" ] }, @@ -2993,7 +3359,7 @@ "properties": { "canIpForward": { "type": "boolean", - "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the canIpForward documentation for more information." + "description": "Enables instances created based on this template to send packets with source IP addresses other than their own and receive packets with destination IP addresses other than their own. If these instances will be used as an IP gateway or it will be set as the next-hop in a Route resource, specify true. If unsure, leave this set to false. See the Enable IP forwarding for instances documentation for more information." }, "description": { "type": "string", @@ -3190,6 +3556,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3218,6 +3585,7 @@ "", "", "", + "", "" ] }, @@ -3256,6 +3624,19 @@ } } }, + "InstancesStartWithEncryptionKeyRequest": { + "id": "InstancesStartWithEncryptionKeyRequest", + "type": "object", + "properties": { + "disks": { + "type": "array", + "description": "Array of disks associated with this instance that are protected with a customer-supplied encryption key.\n\nIn order to start the instance, the disk url and its corresponding key must be provided.\n\nIf the disk is not protected with a customer-supplied encryption key it should not be specified.", + "items": { + "$ref": "CustomerEncryptionKeyProtectedDisk" + } + } + } + }, "License": { "id": "License", "type": "object", @@ -3318,6 +3699,10 @@ "description": "[Deprecated] This property is deprecated and will never be populated with any relevant values.", "format": "int32" }, + "isSharedCpu": { + "type": "boolean", + "description": "[Output Only] Whether this machine type has a shared CPU. See Shared-core machine types for more information." + }, "kind": { "type": "string", "description": "[Output Only] The type of the resource. Always compute#machineType for machine types.", @@ -3451,6 +3836,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3479,6 +3865,7 @@ "", "", "", + "", "" ] }, @@ -3513,10 +3900,11 @@ "properties": { "currentAction": { "type": "string", - "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's target_size value is decreased. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", + "description": "[Output Only] The current action that the managed instance group has scheduled for the instance. Possible values: \n- NONE The instance is running, and the managed instance group does not have any scheduled actions for this instance. \n- CREATING The managed instance group is creating this instance. If the group fails to create this instance, it will try again until it is successful. \n- CREATING_WITHOUT_RETRIES The managed instance group is attempting to create this instance only once. If the group fails to create this instance, it does not try again and the group's targetSize value is decreased instead. \n- RECREATING The managed instance group is recreating this instance. \n- DELETING The managed instance group is permanently deleting this instance. \n- ABANDONING The managed instance group is abandoning this instance. The instance will be removed from the instance group and from any target pools that are associated with this group. \n- RESTARTING The managed instance group is restarting the instance. \n- REFRESHING The managed instance group is applying configuration changes to the instance without stopping it. For example, the group can update the target pool list for an instance without stopping that instance.", "enum": [ "ABANDONING", "CREATING", + "CREATING_WITHOUT_RETRIES", "DELETING", "NONE", "RECREATING", @@ -3530,6 +3918,7 @@ "", "", "", + "", "" ] }, @@ -3735,7 +4124,7 @@ "properties": { "accessConfigs": { "type": "array", - "description": "An array of configurations for this interface. Currently, ONE_TO_ONE_NAT is the only access config supported. If there are no accessConfigs specified, then this instance will have no external internet access.", + "description": "An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If there are no accessConfigs specified, then this instance will have no external internet access.", "items": { "$ref": "AccessConfig" } @@ -3755,11 +4144,11 @@ }, "networkIP": { "type": "string", - "description": "[Output Only] An optional IPV4 internal network address assigned to the instance for this network interface." + "description": "An IPv4 internal network address to assign to the instance for this network interface. If not specified by the user, an unused internal IP is assigned by the system." }, "subnetwork": { "type": "string", - "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/zones/zone/subnetworks/subnetwork \n- zones/zone/subnetworks/subnetwork" + "description": "The URL of the Subnetwork resource for this instance. If the network resource is in legacy mode, do not provide this property. If the network is in auto subnet mode, providing the subnetwork is optional. If the network is in custom subnet mode, then this field should be specified. If you specify this property, you can specify the subnetwork as a full or partial URL. For example, the following are all valid URLs: \n- https://www.googleapis.com/compute/v1/projects/project/regions/region/subnetworks/subnetwork \n- regions/region/subnetworks/subnetwork" } } }, @@ -3934,6 +4323,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -3962,6 +4352,7 @@ "", "", "", + "", "" ] }, @@ -4079,6 +4470,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -4107,6 +4499,7 @@ "", "", "", + "", "" ] }, @@ -4192,6 +4585,10 @@ "type": "string", "description": "[Output Only] Creation timestamp in RFC3339 text format." }, + "defaultServiceAccount": { + "type": "string", + "description": "[Output Only] Default service account used by VMs running in this project." + }, "description": { "type": "string", "description": "An optional textual description of the resource." @@ -4263,6 +4660,10 @@ "IN_USE_ADDRESSES", "LOCAL_SSD_TOTAL_GB", "NETWORKS", + "PREEMPTIBLE_CPUS", + "REGIONAL_AUTOSCALERS", + "REGIONAL_INSTANCE_GROUP_MANAGERS", + "ROUTERS", "ROUTES", "SNAPSHOTS", "SSD_TOTAL_GB", @@ -4273,6 +4674,7 @@ "TARGET_HTTP_PROXIES", "TARGET_INSTANCES", "TARGET_POOLS", + "TARGET_SSL_PROXIES", "TARGET_VPN_GATEWAYS", "URL_MAPS", "VPN_TUNNELS" @@ -4305,6 +4707,11 @@ "", "", "", + "", + "", + "", + "", + "", "" ] }, @@ -4529,6 +4936,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -4557,6 +4965,7 @@ "", "", "", + "", "" ] }, @@ -4617,6 +5026,424 @@ } } }, + "Router": { + "id": "Router", + "type": "object", + "description": "Router resource.", + "properties": { + "bgp": { + "$ref": "RouterBgp", + "description": "BGP information specific to this router." + }, + "bgpPeers": { + "type": "array", + "description": "BGP information that needs to be configured into the routing stack to establish the BGP peering. It must specify peer ASN and either interface name, IP, or peer IP. Please refer to RFC4273.", + "items": { + "$ref": "RouterBgpPeer" + } + }, + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "interfaces": { + "type": "array", + "description": "Router interfaces. Each interface requires either one linked resource (e.g. linkedVpnTunnel) or IP address and IP address range (e.g. ipRange).", + "items": { + "$ref": "RouterInterface" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "default": "compute#router" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "annotations": { + "required": [ + "compute.routers.insert" + ] + } + }, + "network": { + "type": "string", + "description": "URI of the network to which this router belongs.", + "annotations": { + "required": [ + "compute.routers.insert" + ] + } + }, + "region": { + "type": "string", + "description": "[Output Only] URI of the region where the router resides." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RouterAggregatedList": { + "id": "RouterAggregatedList", + "type": "object", + "description": "Contains a list of routers.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "object", + "description": "A map of scoped router lists.", + "additionalProperties": { + "$ref": "RoutersScopedList", + "description": "Name of the scope containing this set of routers." + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#routerAggregatedList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, + "RouterBgp": { + "id": "RouterBgp", + "type": "object", + "properties": { + "asn": { + "type": "integer", + "description": "Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.", + "format": "uint32" + } + } + }, + "RouterBgpPeer": { + "id": "RouterBgpPeer", + "type": "object", + "properties": { + "advertisedRoutePriority": { + "type": "integer", + "description": "The priority of routes advertised to this BGP peer. In the case where there is more than one matching route of maximum length, the routes with lowest priority value win.", + "format": "uint32" + }, + "interfaceName": { + "type": "string", + "description": "Name of the interface the BGP peer is associated with." + }, + "ipAddress": { + "type": "string", + "description": "IP address of the interface inside Google Cloud Platform." + }, + "name": { + "type": "string", + "description": "Name of this BGP peer. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "peerAsn": { + "type": "integer", + "description": "Peer BGP Autonomous System Number (ASN). For VPN use case, this value can be different for every tunnel.", + "format": "uint32" + }, + "peerIpAddress": { + "type": "string", + "description": "IP address of the BGP interface outside Google cloud." + } + } + }, + "RouterInterface": { + "id": "RouterInterface", + "type": "object", + "properties": { + "ipRange": { + "type": "string", + "description": "IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. The value must be a CIDR-formatted string, for example: 169.254.0.1/30. NOTE: Do not truncate the address as it represents the IP address of the interface." + }, + "linkedVpnTunnel": { + "type": "string", + "description": "URI of linked VPN tunnel. It must be in the same region as the router. Each interface can have at most one linked resource." + }, + "name": { + "type": "string", + "description": "Name of this interface entry. The name must be 1-63 characters long and comply with RFC1035.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + } + } + }, + "RouterList": { + "id": "RouterList", + "type": "object", + "description": "Contains a list of Router resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of Router resources.", + "items": { + "$ref": "Router" + } + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of resource. Always compute#router for routers.", + "default": "compute#routerList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + } + } + }, + "RouterStatus": { + "id": "RouterStatus", + "type": "object", + "properties": { + "bestRoutes": { + "type": "array", + "description": "Best routes for this router's network.", + "items": { + "$ref": "Route" + } + }, + "bgpPeerStatus": { + "type": "array", + "items": { + "$ref": "RouterStatusBgpPeerStatus" + } + }, + "network": { + "type": "string", + "description": "URI of the network to which this router belongs." + } + } + }, + "RouterStatusBgpPeerStatus": { + "id": "RouterStatusBgpPeerStatus", + "type": "object", + "properties": { + "advertisedRoutes": { + "type": "array", + "description": "Routes that were advertised to the remote BGP peer", + "items": { + "$ref": "Route" + } + }, + "ipAddress": { + "type": "string", + "description": "IP address of the local BGP interface." + }, + "linkedVpnTunnel": { + "type": "string", + "description": "URL of the VPN tunnel that this BGP peer controls." + }, + "name": { + "type": "string", + "description": "Name of this BGP peer. Unique within the Routers resource." + }, + "numLearnedRoutes": { + "type": "integer", + "description": "Number of routes learned from the remote BGP Peer.", + "format": "uint32" + }, + "peerIpAddress": { + "type": "string", + "description": "IP address of the remote BGP interface." + }, + "state": { + "type": "string", + "description": "BGP state as specified in RFC1771." + }, + "status": { + "type": "string", + "description": "Status of the BGP peer: {UP, DOWN}", + "enum": [ + "DOWN", + "UNKNOWN", + "UP" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "uptime": { + "type": "string", + "description": "Time this session has been up. Format: 14 years, 51 weeks, 6 days, 23 hours, 59 minutes, 59 seconds" + }, + "uptimeSeconds": { + "type": "string", + "description": "Time this session has been up, in seconds. Format: 145" + } + } + }, + "RouterStatusResponse": { + "id": "RouterStatusResponse", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#routerStatusResponse" + }, + "result": { + "$ref": "RouterStatus" + } + } + }, + "RoutersPreviewResponse": { + "id": "RoutersPreviewResponse", + "type": "object", + "properties": { + "resource": { + "$ref": "Router", + "description": "Preview of given router." + } + } + }, + "RoutersScopedList": { + "id": "RoutersScopedList", + "type": "object", + "properties": { + "routers": { + "type": "array", + "description": "List of routers contained in this scope.", + "items": { + "$ref": "Router" + } + }, + "warning": { + "type": "object", + "description": "Informational warning which replaces the list of routers when the list is empty.", + "properties": { + "code": { + "type": "string", + "description": "[Output Only] A warning code, if applicable. For example, Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in the response.", + "enum": [ + "CLEANUP_FAILED", + "DEPRECATED_RESOURCE_USED", + "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", + "INJECTED_KERNELS_DEPRECATED", + "NEXT_HOP_ADDRESS_NOT_ASSIGNED", + "NEXT_HOP_CANNOT_IP_FORWARD", + "NEXT_HOP_INSTANCE_NOT_FOUND", + "NEXT_HOP_INSTANCE_NOT_ON_NETWORK", + "NEXT_HOP_NOT_RUNNING", + "NOT_CRITICAL_ERROR", + "NO_RESULTS_ON_PAGE", + "REQUIRED_TOS_AGREEMENT", + "RESOURCE_NOT_DELETED", + "SINGLE_INSTANCE_PROPERTY_TEMPLATE", + "UNREACHABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "data": { + "type": "array", + "description": "[Output Only] Metadata about this warning in key: value format. For example:\n\"data\": [ { \"key\": \"scope\", \"value\": \"zones/us-east1-d\" }", + "items": { + "type": "object", + "properties": { + "key": { + "type": "string", + "description": "[Output Only] A key that provides more detail on the warning being returned. For example, for warnings where there are no results in a list request for a particular zone, this key might be scope and the key value might be the zone name. Other examples might be a key indicating a deprecated resource and a suggested replacement, or a warning about invalid network settings (for example, if an instance attempts to perform IP forwarding but is not enabled for IP forwarding)." + }, + "value": { + "type": "string", + "description": "[Output Only] A warning data value corresponding to the key." + } + } + } + }, + "message": { + "type": "string", + "description": "[Output Only] A human-readable description of the warning code." + } + } + } + } + }, + "SSLHealthCheck": { + "id": "SSLHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 443.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, "Scheduling": { "id": "Scheduling", "type": "object", @@ -4726,10 +5553,18 @@ "type": "string", "description": "[Output Only] Server-defined URL for the resource." }, + "snapshotEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "Encrypts the snapshot using a customer-supplied encryption key.\n\nAfter you encrypt a snapshot using a customer-supplied key, you must provide the same key if you use the image later For example, you must provide the encryption key when you create a disk from the encrypted snapshot in a future request.\n\nCustomer-supplied encryption keys do not protect access to metadata of the disk.\n\nIf you do not provide an encryption key when creating the snapshot, then the snapshot will be encrypted using an automatically generated key and you do not need to provide a key to use the snapshot later." + }, "sourceDisk": { "type": "string", "description": "[Output Only] The source disk used to create this snapshot." }, + "sourceDiskEncryptionKey": { + "$ref": "CustomerEncryptionKey", + "description": "The customer-supplied encryption key of the source disk. Required if the source disk is protected by a customer-supplied encryption key." + }, "sourceDiskId": { "type": "string", "description": "[Output Only] The ID value of the disk used to create this snapshot. This value may be used to determine whether the snapshot was taken from the current or a previous instance of a given disk name." @@ -4917,7 +5752,7 @@ }, "region": { "type": "string", - "description": "[Output Only] URL of the region where the Subnetwork resides." + "description": "URL of the region where the Subnetwork resides." }, "selfLink": { "type": "string", @@ -5009,6 +5844,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5037,6 +5873,7 @@ "", "", "", + "", "" ] }, @@ -5065,6 +5902,41 @@ } } }, + "TCPHealthCheck": { + "id": "TCPHealthCheck", + "type": "object", + "properties": { + "port": { + "type": "integer", + "description": "The TCP port number for the health check request. The default value is 80.", + "format": "int32" + }, + "portName": { + "type": "string", + "description": "Port name as defined in InstanceGroup#NamedPort#name. If both port and port_name are defined, port takes precedence." + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "request": { + "type": "string", + "description": "The application data to send once the TCP connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII." + }, + "response": { + "type": "string", + "description": "The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII." + } + } + }, "Tags": { "id": "Tags", "type": "object", @@ -5378,6 +6250,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5406,6 +6279,7 @@ "", "", "", + "", "" ] }, @@ -5499,9 +6373,11 @@ "enum": [ "CLIENT_IP", "CLIENT_IP_PROTO", + "GENERATED_COOKIE", "NONE" ], "enumDescriptions": [ + "", "", "", "" @@ -5662,6 +6538,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5690,6 +6567,7 @@ "", "", "", + "", "" ] }, @@ -5727,6 +6605,135 @@ } } }, + "TargetSslProxiesSetBackendServiceRequest": { + "id": "TargetSslProxiesSetBackendServiceRequest", + "type": "object", + "properties": { + "service": { + "type": "string", + "description": "The URL of the new BackendService resource for the targetSslProxy." + } + } + }, + "TargetSslProxiesSetProxyHeaderRequest": { + "id": "TargetSslProxiesSetProxyHeaderRequest", + "type": "object", + "properties": { + "proxyHeader": { + "type": "string", + "description": "The new type of proxy header to append before sending data to the backend. NONE or PROXY_V1 are allowed.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "TargetSslProxiesSetSslCertificatesRequest": { + "id": "TargetSslProxiesSetSslCertificatesRequest", + "type": "object", + "properties": { + "sslCertificates": { + "type": "array", + "description": "New set of URLs to SslCertificate resources to associate with this TargetSslProxy. Currently exactly one ssl certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxy": { + "id": "TargetSslProxy", + "type": "object", + "description": "A TargetSslProxy resource. This resource defines an SSL proxy.", + "properties": { + "creationTimestamp": { + "type": "string", + "description": "[Output Only] Creation timestamp in RFC3339 text format." + }, + "description": { + "type": "string", + "description": "An optional description of this resource. Provide this property when you create the resource." + }, + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server.", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "[Output Only] Type of the resource. Always compute#targetSslProxy for target SSL proxies.", + "default": "compute#targetSslProxy" + }, + "name": { + "type": "string", + "description": "Name of the resource. Provided by the client when the resource is created. The name must be 1-63 characters long, and comply with RFC1035. Specifically, the name must be 1-63 characters long and match the regular expression [a-z]([-a-z0-9]*[a-z0-9])? which means the first character must be a lowercase letter, and all following characters must be a dash, lowercase letter, or digit, except the last character, which cannot be a dash.", + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?" + }, + "proxyHeader": { + "type": "string", + "description": "Specifies the type of proxy header to append before sending data to the backend, either NONE or PROXY_V1. The default is NONE.", + "enum": [ + "NONE", + "PROXY_V1" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for the resource." + }, + "service": { + "type": "string", + "description": "URL to the BackendService resource." + }, + "sslCertificates": { + "type": "array", + "description": "URLs to SslCertificate resources that are used to authenticate connections to Backends. Currently exactly one SSL certificate must be specified.", + "items": { + "type": "string" + } + } + } + }, + "TargetSslProxyList": { + "id": "TargetSslProxyList", + "type": "object", + "description": "Contains a list of TargetSslProxy resources.", + "properties": { + "id": { + "type": "string", + "description": "[Output Only] The unique identifier for the resource. This identifier is defined by the server." + }, + "items": { + "type": "array", + "description": "A list of TargetSslProxy resources.", + "items": { + "$ref": "TargetSslProxy" + } + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "compute#targetSslProxyList" + }, + "nextPageToken": { + "type": "string", + "description": "[Output Only] This token allows you to get the next page of results for list requests. If the number of results is larger than maxResults, use the nextPageToken as a value for the query parameter pageToken in the next list request. Subsequent list requests will have their own nextPageToken to continue paging through the results." + }, + "selfLink": { + "type": "string", + "description": "[Output Only] Server-defined URL for this resource." + } + } + }, "TargetVpnGateway": { "id": "TargetVpnGateway", "type": "object", @@ -5893,6 +6900,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -5921,6 +6929,7 @@ "", "", "", + "", "" ] }, @@ -6024,7 +7033,7 @@ }, "tests": { "type": "array", - "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only all of the test cases pass.", + "description": "The list of expected URL mappings. Request to update this UrlMap will succeed only if all of the test cases pass.", "items": { "$ref": "UrlMapTest" } @@ -6211,6 +7220,17 @@ "type": "string", "description": "[Output Only] URL of the region where the VPN tunnel resides." }, + "remoteTrafficSelector": { + "type": "array", + "description": "Remote traffic selectors to use when establishing the VPN tunnel with peer VPN gateway. The value should be a CIDR formatted string, for example: 192.168.0.0/16. The ranges should be disjoint.", + "items": { + "type": "string" + } + }, + "router": { + "type": "string", + "description": "URL of router resource to be used for dynamic routing." + }, "selfLink": { "type": "string", "description": "[Output Only] Server-defined URL for the resource." @@ -6350,6 +7370,7 @@ "CLEANUP_FAILED", "DEPRECATED_RESOURCE_USED", "DISK_SIZE_LARGER_THAN_IMAGE_SIZE", + "FIELD_VALUE_OVERRIDEN", "INJECTED_KERNELS_DEPRECATED", "NEXT_HOP_ADDRESS_NOT_ASSIGNED", "NEXT_HOP_CANNOT_IP_FORWARD", @@ -6378,6 +7399,7 @@ "", "", "", + "", "" ] }, @@ -6502,7 +7524,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -6523,7 +7545,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -6556,7 +7578,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -6597,7 +7619,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -6632,7 +7654,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -6666,7 +7688,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -6687,7 +7709,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -6723,7 +7745,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -6744,7 +7766,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -6777,7 +7799,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -6818,7 +7840,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -6853,7 +7875,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -6887,7 +7909,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -6908,7 +7930,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -6949,7 +7971,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -6992,7 +8014,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7039,7 +8061,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7072,7 +8094,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7105,7 +8127,7 @@ "project": { "type": "string", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7135,7 +8157,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7161,7 +8183,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7182,7 +8204,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7215,7 +8237,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7251,7 +8273,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7282,7 +8304,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7303,7 +8325,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7336,7 +8358,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7369,7 +8391,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7390,7 +8412,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7426,7 +8448,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7447,7 +8469,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7480,7 +8502,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7517,14 +8539,13 @@ "type": "string", "description": "Name of the persistent disk to delete.", "required": true, - "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", "location": "path" }, "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7565,7 +8586,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7600,7 +8621,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sourceImage": { @@ -7639,7 +8660,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7660,7 +8681,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7701,7 +8722,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -7749,7 +8770,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7782,7 +8803,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7809,7 +8830,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7835,7 +8856,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7856,7 +8877,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7889,7 +8910,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7925,7 +8946,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -7956,7 +8977,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -7977,7 +8998,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8010,7 +9031,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8051,7 +9072,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8086,7 +9107,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8120,7 +9141,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8141,7 +9162,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8182,7 +9203,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -8230,7 +9251,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8263,7 +9284,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8290,7 +9311,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8316,7 +9337,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8337,7 +9358,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8374,7 +9395,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8407,7 +9428,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8434,7 +9455,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8460,7 +9481,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8481,7 +9502,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8514,7 +9535,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8545,7 +9566,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8566,7 +9587,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8599,7 +9620,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8629,7 +9650,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8654,7 +9675,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8675,7 +9696,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8693,6 +9714,222 @@ } } }, + "healthChecks": { + "methods": { + "delete": { + "id": "compute.healthChecks.delete", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "DELETE", + "description": "Deletes the specified HealthCheck resource.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.healthChecks.get", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "GET", + "description": "Returns the specified HealthCheck resource. Get a list of available health checks by making a list() request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "response": { + "$ref": "HealthCheck" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.healthChecks.insert", + "path": "{project}/global/healthChecks", + "httpMethod": "POST", + "description": "Creates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.healthChecks.list", + "path": "{project}/global/healthChecks", + "httpMethod": "GET", + "description": "Retrieves the list of HealthCheck resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "HealthCheckList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.healthChecks.patch", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PATCH", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request. This method supports patch semantics.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "update": { + "id": "compute.healthChecks.update", + "path": "{project}/global/healthChecks/{healthCheck}", + "httpMethod": "PUT", + "description": "Updates a HealthCheck resource in the specified project using the data included in the request.", + "parameters": { + "healthCheck": { + "type": "string", + "description": "Name of the HealthCheck resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "healthCheck" + ], + "request": { + "$ref": "HealthCheck" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "httpHealthChecks": { "methods": { "delete": { @@ -8712,7 +9949,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8745,7 +9982,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8772,7 +10009,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8798,7 +10035,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -8819,7 +10056,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8852,7 +10089,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8888,7 +10125,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8928,7 +10165,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8961,7 +10198,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -8988,7 +10225,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9014,7 +10251,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9035,7 +10272,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9068,7 +10305,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9104,7 +10341,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9144,7 +10381,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9177,7 +10414,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9213,7 +10450,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9230,6 +10467,40 @@ "https://www.googleapis.com/auth/compute.readonly" ] }, + "getFromFamily": { + "id": "compute.images.getFromFamily", + "path": "{project}/global/images/family/{family}", + "httpMethod": "GET", + "description": "Returns the latest image that is part of an image family and is not deprecated.", + "parameters": { + "family": { + "type": "string", + "description": "Name of the image family to search for.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "family" + ], + "response": { + "$ref": "Image" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, "insert": { "id": "compute.images.insert", "path": "{project}/global/images", @@ -9240,7 +10511,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9265,11 +10536,11 @@ "id": "compute.images.list", "path": "{project}/global/images", "httpMethod": "GET", - "description": "Retrieves the list of private images available to the specified project. Private images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 7. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.\n\nSee Accessing images for more information.", + "description": "Retrieves the list of private images available to the specified project. Private images are images you create that belong to your project. This method does not get any images that belong to other projects, including publicly-available images, like Debian 8. If you want to get a list of publicly-available images, use this method to make a request to the respective image project, such as debian-cloud or windows-cloud.", "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9290,7 +10561,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9326,7 +10597,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9360,7 +10631,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9381,7 +10652,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9413,7 +10684,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9452,7 +10723,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9494,7 +10765,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9528,7 +10799,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9561,7 +10832,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9582,7 +10853,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9621,7 +10892,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9661,7 +10932,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9703,7 +10974,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "size": { @@ -9750,7 +11021,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9792,7 +11063,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9838,7 +11109,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9872,7 +11143,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -9893,7 +11164,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -9925,7 +11196,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9964,7 +11235,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -9998,7 +11269,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10031,7 +11302,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10052,7 +11323,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10083,7 +11354,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "instanceGroup": { @@ -10110,7 +11381,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10153,7 +11424,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10195,7 +11466,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10242,7 +11513,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10275,7 +11546,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10302,7 +11573,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10328,7 +11599,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10349,7 +11620,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10392,7 +11663,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10428,7 +11699,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10449,7 +11720,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -10482,7 +11753,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10526,7 +11797,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10579,7 +11850,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10615,7 +11886,6 @@ "type": "string", "description": "Disk device name to detach.", "required": true, - "pattern": "\\w[\\w.-]{0,254}", "location": "query" }, "instance": { @@ -10629,7 +11899,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10671,7 +11941,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10722,7 +11992,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10757,7 +12027,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10791,7 +12061,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -10812,7 +12082,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10853,7 +12123,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10907,7 +12177,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10950,7 +12220,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -10994,7 +12264,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11038,7 +12308,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11082,7 +12352,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11126,7 +12396,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11150,6 +12420,50 @@ "https://www.googleapis.com/auth/compute" ] }, + "startWithEncryptionKey": { + "id": "compute.instances.startWithEncryptionKey", + "path": "{project}/zones/{zone}/instances/{instance}/startWithEncryptionKey", + "httpMethod": "POST", + "description": "Starts an instance that was stopped using the using the instances().stop method. For more information, see Restart an instance.", + "parameters": { + "instance": { + "type": "string", + "description": "Name of the instance resource to start.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the zone for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "zone", + "instance" + ], + "request": { + "$ref": "InstancesStartWithEncryptionKeyRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "stop": { "id": "compute.instances.stop", "path": "{project}/zones/{zone}/instances/{instance}/stop", @@ -11167,7 +12481,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11212,7 +12526,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11241,7 +12555,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11262,7 +12576,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11295,7 +12609,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11328,7 +12642,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11349,7 +12663,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -11394,7 +12708,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11427,7 +12741,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11454,7 +12768,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11480,7 +12794,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11501,7 +12815,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11531,7 +12845,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11557,7 +12871,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11585,7 +12899,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11613,7 +12927,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11641,7 +12955,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11683,7 +12997,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -11721,7 +13035,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -11754,7 +13068,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11775,7 +13089,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -11813,7 +13127,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -11845,7 +13159,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -11866,7 +13180,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11884,6 +13198,402 @@ } } }, + "routers": { + "methods": { + "aggregatedList": { + "id": "compute.routers.aggregatedList", + "path": "{project}/aggregated/routers", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of routers.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "RouterAggregatedList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "delete": { + "id": "compute.routers.delete", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "DELETE", + "description": "Deletes the specified Router resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.routers.get", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "GET", + "description": "Returns the specified Router resource. Get a list of available routers by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "Router" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "getRouterStatus": { + "id": "compute.routers.getRouterStatus", + "path": "{project}/regions/{region}/routers/{router}/getRouterStatus", + "httpMethod": "GET", + "description": "Retrieves runtime information of the specified router.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to query.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "response": { + "$ref": "RouterStatusResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.routers.insert", + "path": "{project}/regions/{region}/routers", + "httpMethod": "POST", + "description": "Creates a Router resource in the specified project and region using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.routers.list", + "path": "{project}/regions/{region}/routers", + "httpMethod": "GET", + "description": "Retrieves a list of Router resources available to the specified project.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region" + ], + "response": { + "$ref": "RouterList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "patch": { + "id": "compute.routers.patch", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "PATCH", + "description": "Updates the entire content of the Router resource. This method supports patch semantics.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "preview": { + "id": "compute.routers.preview", + "path": "{project}/regions/{region}/routers/{router}/preview", + "httpMethod": "POST", + "description": "Preview fields auto-generated during router create and update operations. Calling this method does NOT create or update the router.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to query.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "RoutersPreviewResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "update": { + "id": "compute.routers.update", + "path": "{project}/regions/{region}/routers/{router}", + "httpMethod": "PUT", + "description": "Updates the entire content of the Router resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "region": { + "type": "string", + "description": "Name of the region for this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + }, + "router": { + "type": "string", + "description": "Name of the Router resource to update.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "region", + "router" + ], + "request": { + "$ref": "Router" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, "routes": { "methods": { "delete": { @@ -11896,7 +13606,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "route": { @@ -11929,7 +13639,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "route": { @@ -11963,7 +13673,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -11989,7 +13699,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12010,7 +13720,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12040,7 +13750,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "snapshot": { @@ -12073,7 +13783,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "snapshot": { @@ -12105,7 +13815,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12126,7 +13836,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12156,7 +13866,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sslCertificate": { @@ -12189,7 +13899,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "sslCertificate": { @@ -12223,7 +13933,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12249,7 +13959,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12270,7 +13980,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12298,7 +14008,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12319,7 +14029,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12345,7 +14055,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -12380,13 +14090,13 @@ "id": "compute.subnetworks.get", "path": "{project}/regions/{region}/subnetworks/{subnetwork}", "httpMethod": "GET", - "description": "Returns the specified subnetwork. Get a list of available subnetworks by making a list() request.", + "description": "Returns the specified subnetwork. Get a list of available subnetworks list() request.", "parameters": { "project": { "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -12428,7 +14138,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -12462,7 +14172,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12483,7 +14193,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -12521,7 +14231,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -12554,7 +14264,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -12588,7 +14298,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12614,7 +14324,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12635,7 +14345,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12661,7 +14371,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpProxy": { @@ -12701,7 +14411,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -12734,7 +14444,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -12768,7 +14478,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12794,7 +14504,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12815,7 +14525,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12841,7 +14551,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -12877,7 +14587,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetHttpsProxy": { @@ -12915,7 +14625,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -12936,7 +14646,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -12962,7 +14672,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetInstance": { @@ -13003,7 +14713,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "targetInstance": { @@ -13045,7 +14755,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -13079,7 +14789,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13100,7 +14810,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -13138,7 +14848,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13182,7 +14892,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13224,7 +14934,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13245,7 +14955,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13271,7 +14981,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13312,7 +15022,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13354,7 +15064,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13399,7 +15109,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13433,7 +15143,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13454,7 +15164,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13488,7 +15198,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13532,7 +15242,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13582,7 +15292,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13618,17 +15328,112 @@ } } }, - "targetVpnGateways": { + "targetSslProxies": { "methods": { - "aggregatedList": { - "id": "compute.targetVpnGateways.aggregatedList", - "path": "{project}/aggregated/targetVpnGateways", + "delete": { + "id": "compute.targetSslProxies.delete", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", + "httpMethod": "DELETE", + "description": "Deletes the specified TargetSslProxy resource.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to delete.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "get": { + "id": "compute.targetSslProxies.get", + "path": "{project}/global/targetSslProxies/{targetSslProxy}", "httpMethod": "GET", - "description": "Retrieves an aggregated list of target VPN gateways.", + "description": "Returns the specified TargetSslProxy resource. Get a list of available target SSL proxies by making a list() request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource to return.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "response": { + "$ref": "TargetSslProxy" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "insert": { + "id": "compute.targetSslProxies.insert", + "path": "{project}/global/targetSslProxies", + "httpMethod": "POST", + "description": "Creates a TargetSslProxy resource in the specified project using the data included in the request.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "TargetSslProxy" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "list": { + "id": "compute.targetSslProxies.list", + "path": "{project}/global/targetSslProxies", + "httpMethod": "GET", + "description": "Retrieves the list of TargetSslProxy resources available to the specified project.", "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13649,7 +15454,164 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "TargetSslProxyList" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", + "https://www.googleapis.com/auth/compute.readonly" + ] + }, + "setBackendService": { + "id": "compute.targetSslProxies.setBackendService", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setBackendService", + "httpMethod": "POST", + "description": "Changes the BackendService for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose BackendService resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetBackendServiceRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setProxyHeader": { + "id": "compute.targetSslProxies.setProxyHeader", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setProxyHeader", + "httpMethod": "POST", + "description": "Changes the ProxyHeaderType for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose ProxyHeader is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetProxyHeaderRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, + "setSslCertificates": { + "id": "compute.targetSslProxies.setSslCertificates", + "path": "{project}/global/targetSslProxies/{targetSslProxy}/setSslCertificates", + "httpMethod": "POST", + "description": "Changes SslCertificates for TargetSslProxy.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "targetSslProxy": { + "type": "string", + "description": "Name of the TargetSslProxy resource whose SslCertificate resource is to be set.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "targetSslProxy" + ], + "request": { + "$ref": "TargetSslProxiesSetSslCertificatesRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + } + } + }, + "targetVpnGateways": { + "methods": { + "aggregatedList": { + "id": "compute.targetVpnGateways.aggregatedList", + "path": "{project}/aggregated/targetVpnGateways", + "httpMethod": "GET", + "description": "Retrieves an aggregated list of target VPN gateways.", + "parameters": { + "filter": { + "type": "string", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "The maximum number of results per page that should be returned. If the number of available results is larger than maxResults, Compute Engine returns a nextPageToken that can be used to get the next page of results in subsequent list requests.", + "default": "500", + "format": "uint32", + "minimum": "0", + "maximum": "500", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Specifies a page token to use. Set pageToken to the nextPageToken returned by a previous list request to get the next page of results.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13675,7 +15637,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13716,7 +15678,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13758,7 +15720,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13792,7 +15754,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13813,7 +15775,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -13851,7 +15813,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -13884,7 +15846,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -13918,7 +15880,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13936,6 +15898,42 @@ "https://www.googleapis.com/auth/compute" ] }, + "invalidateCache": { + "id": "compute.urlMaps.invalidateCache", + "path": "{project}/global/urlMaps/{urlMap}/invalidateCache", + "httpMethod": "POST", + "description": "Initiates a cache invalidation operation, invalidating the specified path, scoped to the specified UrlMap.", + "parameters": { + "project": { + "type": "string", + "description": "Project ID for this request.", + "required": true, + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "location": "path" + }, + "urlMap": { + "type": "string", + "description": "Name of the UrlMap scoping this request.", + "required": true, + "pattern": "[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?", + "location": "path" + } + }, + "parameterOrder": [ + "project", + "urlMap" + ], + "request": { + "$ref": "CacheInvalidationRule" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute" + ] + }, "list": { "id": "compute.urlMaps.list", "path": "{project}/global/urlMaps", @@ -13944,7 +15942,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -13965,7 +15963,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -13991,7 +15989,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -14027,7 +16025,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -14063,7 +16061,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "urlMap": { @@ -14101,7 +16099,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14122,7 +16120,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, @@ -14148,7 +16146,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14189,7 +16187,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14231,7 +16229,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14265,7 +16263,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14286,7 +16284,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "region": { @@ -14331,7 +16329,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -14369,7 +16367,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -14402,7 +16400,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14423,7 +16421,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -14461,7 +16459,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" }, "zone": { @@ -14493,7 +16491,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: If you use filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. In particular, use filtering on nested fields to take advantage of instance labels to organize and filter results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -14514,7 +16512,7 @@ "type": "string", "description": "Project ID for this request.", "required": true, - "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?))", + "pattern": "(?:(?:[-a-z0-9]{1,63}\\.)*(?:[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?):)?(?:[0-9]{1,19}|(?:[a-z0-9](?:[-a-z0-9]{0,61}[a-z0-9])?))", "location": "path" } }, diff --git a/etc/api/consumersurveys/v2/consumersurveys-api.json b/etc/api/consumersurveys/v2/consumersurveys-api.json index e287c892c1..aab6288660 100644 --- a/etc/api/consumersurveys/v2/consumersurveys-api.json +++ b/etc/api/consumersurveys/v2/consumersurveys-api.json @@ -1,13 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/2ITXfTj3l8aU9YhKDrABM562udw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/r9HedtrzUW2pbu5XQ5oErnzKmxQ\"", "discoveryVersion": "v1", "id": "consumersurveys:v2", "name": "consumersurveys", + "canonicalName": "Consumer Surveys", "version": "v2", - "revision": "20160405", + "revision": "20160718", "title": "Consumer Surveys API", - "description": "API for Google Consumer Surveys.", + "description": "Creates and conducts surveys, lists the surveys that an authenticated user owns, and retrieves survey results and information about specified surveys.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -97,6 +98,63 @@ } } }, + "MobileAppPanel": { + "id": "MobileAppPanel", + "type": "object", + "description": "Representation of an individual pre-defined panel object defining a targeted audience of opinion rewards mobile app users.", + "properties": { + "country": { + "type": "string", + "description": "Country code for the country of the users that the panel contains. Uses standard ISO 3166-1 2-character language codes. For instance, 'US' for the United States, and 'GB' for the United Kingdom. Any survey created targeting this panel must also target the corresponding country." + }, + "isPublicPanel": { + "type": "boolean", + "description": "Whether or not the panel is accessible to all API users." + }, + "language": { + "type": "string", + "description": "Language code that the panel can target. For instance, 'en-US'. Uses standard BCP47 language codes. See specification. Any survey created targeting this panel must also target the corresponding language." + }, + "mobileAppPanelId": { + "type": "string", + "description": "Unique panel ID string. This corresponds to the mobile_app_panel_id used in Survey Insert requests." + }, + "name": { + "type": "string", + "description": "Human readable name of the audience panel." + }, + "owners": { + "type": "array", + "description": "List of email addresses for users who can target members of this panel. Must contain at least the address of the user making the API call for panels that are not public. This field will be empty for public panels.", + "items": { + "type": "string" + } + } + } + }, + "MobileAppPanelsListResponse": { + "id": "MobileAppPanelsListResponse", + "type": "object", + "properties": { + "pageInfo": { + "$ref": "PageInfo" + }, + "requestId": { + "type": "string", + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." + }, + "resources": { + "type": "array", + "description": "An individual predefined panel of Opinion Rewards mobile users.", + "items": { + "$ref": "MobileAppPanel" + } + }, + "tokenPagination": { + "$ref": "TokenPagination" + } + } + }, "PageInfo": { "id": "PageInfo", "type": "object", @@ -187,7 +245,7 @@ }, "state": { "type": "string", - "description": "State that the survey is in. Can be modified to start, stop, or pause survey." + "description": "State that the survey is in." }, "surveyUrlId": { "type": "string", @@ -245,6 +303,10 @@ ] } }, + "mobileAppPanelId": { + "type": "string", + "description": "Key for predefined panel that causes survey to be sent to a predefined set of Opinion Rewards App users. You must set PopulationSource to ANDROID_APP_PANEL to use this field." + }, "populationSource": { "type": "string", "description": "Online population source where the respondents are sampled from." @@ -256,13 +318,23 @@ "type": "object", "description": "Message defining the cost to run a given survey through API.", "properties": { + "costPerResponseNanos": { + "type": "string", + "description": "Cost per survey response in nano units of the given currency. To get the total cost for a survey, multiply this value by wanted_response_count.", + "format": "int64" + }, "currencyCode": { "type": "string", "description": "Currency code that the cost is given in." }, + "maxCostPerResponseNanos": { + "type": "string", + "description": "Threshold to start a survey automatically if the quoted price is at most this value. When a survey has a Screener (threshold) question, it must go through an incidence pricing test to determine the final cost per response. Typically you will have to make a followup call to start the survey giving the final computed cost per response. If the survey has no threshold_answers, setting this property will return an error. By specifying this property, you indicate the max price per response you are willing to pay in advance of the incidence test. If the price turns out to be lower than the specified value, the survey will begin immediately and you will be charged at the rate determined by the incidence pricing test. If the price turns out to be greater than the specified value the survey will not be started and you will instead be notified what price was determined by the incidence test. At that point, you must raise the value of this property to be greater than or equal to that cost before attempting to start the survey again. This will immediately start the survey as long the incidence test was run within the last 21 days.", + "format": "int64" + }, "nanos": { "type": "string", - "description": "Cost of survey in nano units of the given currency.", + "description": "Cost of survey in nano units of the given currency. DEPRECATED in favor of cost_per_response_nanos", "format": "int64" } } @@ -397,6 +469,16 @@ } } }, + "SurveysDeleteResponse": { + "id": "SurveysDeleteResponse", + "type": "object", + "properties": { + "requestId": { + "type": "string", + "description": "Unique request ID used for logging and debugging. Please include in any error reporting or troubleshooting requests." + } + } + }, "SurveysListResponse": { "id": "SurveysListResponse", "type": "object", @@ -420,6 +502,17 @@ } } }, + "SurveysStartRequest": { + "id": "SurveysStartRequest", + "type": "object", + "properties": { + "maxCostPerResponseNanos": { + "type": "string", + "description": "Threshold to start a survey automically if the quoted prices is less than or equal to this value. See Survey.Cost for more details.", + "format": "int64" + } + } + }, "SurveysStartResponse": { "id": "SurveysStartResponse", "type": "object", @@ -462,6 +555,92 @@ } }, "resources": { + "mobileapppanels": { + "methods": { + "get": { + "id": "consumersurveys.mobileapppanels.get", + "path": "mobileAppPanels/{panelId}", + "httpMethod": "GET", + "description": "Retrieves a MobileAppPanel that is available to the authenticated user.", + "parameters": { + "panelId": { + "type": "string", + "description": "External URL ID for the panel.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "panelId" + ], + "response": { + "$ref": "MobileAppPanel" + }, + "scopes": [ + "https://www.googleapis.com/auth/consumersurveys", + "https://www.googleapis.com/auth/consumersurveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "list": { + "id": "consumersurveys.mobileapppanels.list", + "path": "mobileAppPanels", + "httpMethod": "GET", + "description": "Lists the MobileAppPanels available to the authenticated user.", + "parameters": { + "maxResults": { + "type": "integer", + "format": "uint32", + "location": "query" + }, + "startIndex": { + "type": "integer", + "format": "uint32", + "location": "query" + }, + "token": { + "type": "string", + "location": "query" + } + }, + "response": { + "$ref": "MobileAppPanelsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/consumersurveys", + "https://www.googleapis.com/auth/consumersurveys.readonly", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "update": { + "id": "consumersurveys.mobileapppanels.update", + "path": "mobileAppPanels/{panelId}", + "httpMethod": "PUT", + "description": "Updates a MobileAppPanel. Currently the only property that can be updated is the owners property.", + "parameters": { + "panelId": { + "type": "string", + "description": "External URL ID for the panel.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "panelId" + ], + "request": { + "$ref": "MobileAppPanel" + }, + "response": { + "$ref": "MobileAppPanel" + }, + "scopes": [ + "https://www.googleapis.com/auth/consumersurveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + }, "results": { "methods": { "get": { @@ -497,6 +676,30 @@ }, "surveys": { "methods": { + "delete": { + "id": "consumersurveys.surveys.delete", + "path": "surveys/{surveyUrlId}", + "httpMethod": "DELETE", + "description": "Removes a survey from view in all user GET requests.", + "parameters": { + "surveyUrlId": { + "type": "string", + "description": "External URL ID for the survey.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "surveyUrlId" + ], + "response": { + "$ref": "SurveysDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/consumersurveys", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, "get": { "id": "consumersurveys.surveys.get", "path": "surveys/{surveyUrlId}", @@ -583,6 +786,9 @@ "parameterOrder": [ "resourceId" ], + "request": { + "$ref": "SurveysStartRequest" + }, "response": { "$ref": "SurveysStartResponse" }, diff --git a/etc/api/container/v1/container-api.json b/etc/api/container/v1/container-api.json index 95dcdfeb5c..26700fd22b 100644 --- a/etc/api/container/v1/container-api.json +++ b/etc/api/container/v1/container-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/OU95LyfeHZcrBJDajlkYXi0P4Wo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/cpP4K9eaLrLwMGtsdl5oXjxb8rw\"", "discoveryVersion": "v1", "id": "container:v1", "name": "container", "version": "v1", - "revision": "20160321", + "revision": "20160421", "title": "Google Container Engine API", "description": "Builds and manages clusters that run container-based applications, powered by open source Kubernetes technology.", "ownerDomain": "google.com", @@ -181,6 +181,20 @@ "type": "string", "description": "The name of the Google Compute Engine [subnetwork](/compute/docs/subnetworks) to which the cluster is connected." }, + "nodePools": { + "type": "array", + "description": "The node pools associated with this cluster. When creating a new cluster, only a single node pool should be specified. This field should not be set if \"node_config\" or \"initial_node_count\" are specified.", + "items": { + "$ref": "NodePool" + } + }, + "locations": { + "type": "array", + "description": "The list of Google Compute Engine [locations](/compute/docs/zones#available) in which the cluster's nodes should be located.", + "items": { + "type": "string" + } + }, "selfLink": { "type": "string", "description": "[Output only] Server-defined URL for the resource." @@ -342,6 +356,58 @@ } } }, + "NodePool": { + "id": "NodePool", + "type": "object", + "description": "NodePool contains the name and configuration for a cluster's node pool. Node pools are a set of nodes (i.e. VM's), with a common configuration and specification, under the control of the cluster master. They may have a set of Kubernetes labels applied to them, which may be used to reference them during pod scheduling. They may also be resized up or down, to accommodate the workload.", + "properties": { + "name": { + "type": "string", + "description": "The name of the node pool." + }, + "config": { + "$ref": "NodeConfig", + "description": "The node configuration of the pool." + }, + "initialNodeCount": { + "type": "integer", + "description": "The initial node count for the pool. You must ensure that your Compute Engine resource quota is sufficient for this number of instances. You must also have available firewall and routes quota.", + "format": "int32" + }, + "selfLink": { + "type": "string", + "description": "Server-defined URL for the resource." + }, + "version": { + "type": "string", + "description": "The version of the Kubernetes of this node." + }, + "instanceGroupUrls": { + "type": "array", + "description": "[Output only] The resource URLs of [instance groups](/compute/docs/instance-groups/) associated with this node pool.", + "items": { + "type": "string" + } + }, + "status": { + "type": "string", + "description": "The status of the nodes in this pool instance.", + "enum": [ + "STATUS_UNSPECIFIED", + "PROVISIONING", + "RUNNING", + "RUNNING_WITH_ERROR", + "RECONCILING", + "STOPPING", + "ERROR" + ] + }, + "statusMessage": { + "type": "string", + "description": "[Output only] Additional information about the current status of this node pool instance, if available." + } + } + }, "CreateClusterRequest": { "id": "CreateClusterRequest", "type": "object", @@ -437,6 +503,10 @@ "$ref": "AddonsConfig", "description": "Configurations for the various addons available to run in the cluster." }, + "desiredNodePoolId": { + "type": "string", + "description": "The node pool to be upgraded. This field is mandatory if the \"desired_node_version\" or \"desired_image_family\" is specified and there is more than one node pool on the cluster." + }, "desiredMasterVersion": { "type": "string", "description": "The Kubernetes version to change the master to. The only valid value is the latest supported version. Use \"-\" to have the server automatically select the latest version." @@ -479,6 +549,42 @@ "items": { "type": "string" } + }, + "defaultImageFamily": { + "type": "string", + "description": "Default image family." + }, + "validImageFamilies": { + "type": "array", + "description": "List of valid image families.", + "items": { + "type": "string" + } + } + } + }, + "ListNodePoolsResponse": { + "id": "ListNodePoolsResponse", + "type": "object", + "description": "ListNodePoolsResponse is the result of ListNodePoolsRequest.", + "properties": { + "nodePools": { + "type": "array", + "description": "A list of node pools for a cluster.", + "items": { + "$ref": "NodePool" + } + } + } + }, + "CreateNodePoolRequest": { + "id": "CreateNodePoolRequest", + "type": "object", + "description": "CreateNodePoolRequest creates a node pool for a cluster.", + "properties": { + "nodePool": { + "$ref": "NodePool", + "description": "The node pool to create." } } } @@ -699,6 +805,177 @@ "https://www.googleapis.com/auth/cloud-platform" ] } + }, + "resources": { + "nodePools": { + "methods": { + "list": { + "id": "container.projects.zones.clusters.nodePools.list", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "GET", + "description": "Lists the node pools for a cluster.", + "parameters": { + "projectId": { + "type": "string", + "description": "The Google Developers Console [project ID or project number](https://developers.google.com/console/help/new/#projectnumber).", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available) in which the cluster resides.", + "required": true, + "location": "path" + }, + "clusterId": { + "type": "string", + "description": "The name of the cluster.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "response": { + "$ref": "ListNodePoolsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "get": { + "id": "container.projects.zones.clusters.nodePools.get", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "GET", + "description": "Retrieves the node pool requested.", + "parameters": { + "projectId": { + "type": "string", + "description": "The Google Developers Console [project ID or project number](https://developers.google.com/console/help/new/#projectnumber).", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available) in which the cluster resides.", + "required": true, + "location": "path" + }, + "clusterId": { + "type": "string", + "description": "The name of the cluster.", + "required": true, + "location": "path" + }, + "nodePoolId": { + "type": "string", + "description": "The name of the node pool.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "NodePool" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "create": { + "id": "container.projects.zones.clusters.nodePools.create", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools", + "httpMethod": "POST", + "description": "Creates a node pool for a cluster.", + "parameters": { + "projectId": { + "type": "string", + "description": "The Google Developers Console [project ID or project number](https://developers.google.com/console/help/new/#projectnumber).", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available) in which the cluster resides.", + "required": true, + "location": "path" + }, + "clusterId": { + "type": "string", + "description": "The name of the cluster.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId" + ], + "request": { + "$ref": "CreateNodePoolRequest" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + }, + "delete": { + "id": "container.projects.zones.clusters.nodePools.delete", + "path": "v1/projects/{projectId}/zones/{zone}/clusters/{clusterId}/nodePools/{nodePoolId}", + "httpMethod": "DELETE", + "description": "Deletes a node pool from a cluster.", + "parameters": { + "projectId": { + "type": "string", + "description": "The Google Developers Console [project ID or project number](https://developers.google.com/console/help/new/#projectnumber).", + "required": true, + "location": "path" + }, + "zone": { + "type": "string", + "description": "The name of the Google Compute Engine [zone](/compute/docs/zones#available) in which the cluster resides.", + "required": true, + "location": "path" + }, + "clusterId": { + "type": "string", + "description": "The name of the cluster.", + "required": true, + "location": "path" + }, + "nodePoolId": { + "type": "string", + "description": "The name of the node pool to delete.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "zone", + "clusterId", + "nodePoolId" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform" + ] + } + } + } } }, "operations": { diff --git a/etc/api/content/v2/content-api.json b/etc/api/content/v2/content-api.json index 7dee0cbc70..6835d42a0c 100644 --- a/etc/api/content/v2/content-api.json +++ b/etc/api/content/v2/content-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/2jCRejD7TwMcZrBmt-AfB92UN1E\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/KYk0P4hLurettj7gPX6wNnI67WQ\"", "discoveryVersion": "v1", "id": "content:v2", "name": "content", "canonicalName": "Shopping Content", "version": "v2", - "revision": "20160331", + "revision": "20160905", "title": "Content API for Shopping", "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", "ownerDomain": "google.com", @@ -455,6 +455,16 @@ "$ref": "AccountShippingShippingServiceCostRule", "description": "Decision tree for \"complicated\" shipping cost calculation." }, + "maxDaysInTransit": { + "type": "string", + "description": "The maximum number of days in transit. Must be a value between 0 and 250 included. A value of 0 means same day delivery.", + "format": "uint64" + }, + "minDaysInTransit": { + "type": "string", + "description": "The minimum number of days in transit. Must be a value between 0 and maxDaysIntransit included. A value of 0 means same day delivery.", + "format": "uint64" + }, "name": { "type": "string", "description": "The name of this shipping service.", @@ -1126,6 +1136,57 @@ } } }, + "CarrierRate": { + "id": "CarrierRate", + "type": "object", + "properties": { + "carrierName": { + "type": "string", + "description": "Carrier service, such as \"UPS\" or \"Fedex\". The list of supported carriers can be retrieved via the getSupportedCarriers method. Required." + }, + "carrierService": { + "type": "string", + "description": "Carrier service, such as \"ground\" or \"2 days\". The list of supported services for a carrier can be retrieved via the getSupportedCarriers method. Required." + }, + "flatAdjustment": { + "$ref": "Price", + "description": "Additive shipping rate modifier. Can be negative. For example { \"value\": \"1\", \"currency\" : \"USD\" } adds $1 to the rate, { \"value\": \"-3\", \"currency\" : \"USD\" } removes $3 from the rate. Optional." + }, + "name": { + "type": "string", + "description": "Name of the carrier rate. Must be unique per rate group. Required." + }, + "originPostalCode": { + "type": "string", + "description": "Shipping origin for this carrier rate. Required." + }, + "percentageAdjustment": { + "type": "string", + "description": "Multiplicative shipping rate modifier as a number in decimal notation. Can be negative. For example \"5.4\" increases the rate by 5.4%, \"-3\" decreases the rate by 3%. Optional." + } + } + }, + "CarriersCarrier": { + "id": "CarriersCarrier", + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "The CLDR country code of the carrier (e.g., \"US\"). Always present." + }, + "name": { + "type": "string", + "description": "The name of the carrier (e.g., \"UPS\"). Always present." + }, + "services": { + "type": "array", + "description": "A list of supported services (e.g., \"ground\") for that carrier. Contains at least one service.", + "items": { + "type": "string" + } + } + } + }, "Datafeed": { "id": "Datafeed", "type": "object", @@ -1569,6 +1630,22 @@ } } }, + "DeliveryTime": { + "id": "DeliveryTime", + "type": "object", + "properties": { + "maxTransitTimeInDays": { + "type": "integer", + "description": "Maximum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Must be greater than or equal to minTransitTimeInDays. Required.", + "format": "uint32" + }, + "minTransitTimeInDays": { + "type": "integer", + "description": "Minimum number of business days that is spent in transit. 0 means same day delivery, 1 means next day delivery. Required.", + "format": "uint32" + } + } + }, "Error": { "id": "Error", "type": "object", @@ -1611,6 +1688,48 @@ } } }, + "Headers": { + "id": "Headers", + "type": "object", + "description": "A non-empty list of row or column headers for a table. Exactly one of prices, weights, numItems, postalCodeGroupNames, or locations must be set.", + "properties": { + "locations": { + "type": "array", + "description": "A list of location ID sets. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "LocationIdSet" + } + }, + "numberOfItems": { + "type": "array", + "description": "A list of inclusive number of items upper bounds. The last value can be \"infinity\". For example [\"10\", \"50\", \"infinity\"] represents the headers \"\u003c= 10 items\", \" 50 items\". Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "type": "string" + } + }, + "postalCodeGroupNames": { + "type": "array", + "description": "A list of postal group names. The last value can be \"all other locations\". Example: [\"zone 1\", \"zone 2\", \"all other locations\"]. The referred postal code groups must match the delivery country of the service. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "type": "string" + } + }, + "prices": { + "type": "array", + "description": "be \"infinity\". For example [{\"value\": \"10\", \"currency\": \"USD\"}, {\"value\": \"500\", \"currency\": \"USD\"}, {\"value\": \"infinity\", \"currency\": \"USD\"}] represents the headers \"\u003c= $10\", \" $500\". All prices within a service must have the same currency. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "Price" + } + }, + "weights": { + "type": "array", + "description": "be \"infinity\". For example [{\"value\": \"10\", \"unit\": \"kg\"}, {\"value\": \"50\", \"unit\": \"kg\"}, {\"value\": \"infinity\", \"unit\": \"kg\"}] represents the headers \"\u003c= 10kg\", \" 50kg\". All weights within a service must have the same unit. Must be non-empty. Can only be set if all other fields are not set.", + "items": { + "$ref": "Weight" + } + } + } + }, "Installment": { "id": "Installment", "type": "object", @@ -1803,6 +1922,19 @@ } } }, + "LocationIdSet": { + "id": "LocationIdSet", + "type": "object", + "properties": { + "locationIds": { + "type": "array", + "description": "A non-empty list of location IDs. They must all be of the same location type (e.g., state).", + "items": { + "type": "string" + } + } + } + }, "LoyaltyPoints": { "id": "LoyaltyPoints", "type": "object", @@ -1831,6 +1963,10 @@ "type": "boolean", "description": "Whether the order was acknowledged." }, + "channelType": { + "type": "string", + "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\"." + }, "customer": { "$ref": "OrderCustomer", "description": "The details of the customer who placed the order." @@ -1981,7 +2117,7 @@ }, "reason": { "type": "string", - "description": "The reason for the cancellation." + "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads." }, "reasonText": { "type": "string", @@ -1999,7 +2135,7 @@ }, "explicitMarketingPreference": { "type": "boolean", - "description": "If set, this indicates the user had a choice to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow." + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow." }, "fullName": { "type": "string", @@ -3118,6 +3254,41 @@ } } }, + "PostalCodeGroup": { + "id": "PostalCodeGroup", + "type": "object", + "properties": { + "country": { + "type": "string", + "description": "The CLDR territory code of the country the postal code group applies to. Required." + }, + "name": { + "type": "string", + "description": "The name of the postal code group, referred to in headers. Required." + }, + "postalCodeRanges": { + "type": "array", + "description": "A range of postal codes. Required.", + "items": { + "$ref": "PostalCodeRange" + } + } + } + }, + "PostalCodeRange": { + "id": "PostalCodeRange", + "type": "object", + "properties": { + "postalCodeRangeBegin": { + "type": "string", + "description": "A postal code or a pattern of the form prefix* denoting the inclusive lower bound of the range defining the area. Examples values: \"94108\", \"9410*\", \"9*\". Required." + }, + "postalCodeRangeEnd": { + "type": "string", + "description": "A postal code or a pattern of the form prefix* denoting the inclusive upper bound of the range defining the area. It must have the same length as postalCodeRangeBegin: if postalCodeRangeBegin is a postal code then postalCodeRangeEnd must be a postal code too; if postalCodeRangeBegin is a pattern then postalCodeRangeEnd must be a pattern with the same prefix length. Optional: if not set, then the area is defined as being all the postal codes matching postalCodeRangeBegin." + } + } + }, "Price": { "id": "Price", "type": "object", @@ -3144,6 +3315,13 @@ "type": "string" } }, + "additionalProductTypes": { + "type": "array", + "description": "Additional categories of the item (formatted as in products feed specification).", + "items": { + "type": "string" + } + }, "adult": { "type": "boolean", "description": "Set to true if the item is targeted towards adults." @@ -3357,7 +3535,7 @@ }, "offerId": { "type": "string", - "description": "An identifier of the item.", + "description": "An identifier of the item. Leading and trailing whitespaces are stripped and multiple whitespaces are replaced by a single whitespace upon submission. Only valid unicode characters are accepted. See the products feed specification for details.", "annotations": { "required": [ "content.products.insert" @@ -3378,7 +3556,7 @@ }, "productType": { "type": "string", - "description": "Your category of the item (formatted as in product feeds specification)." + "description": "Your category of the item (formatted as in products feed specification)." }, "promotionIds": { "type": "array", @@ -3393,7 +3571,7 @@ }, "salePriceEffectiveDate": { "type": "string", - "description": "Date range during which the item is on sale (see product feed specifications)." + "description": "Date range during which the item is on sale (see products feed specification)." }, "sellOnGoogleQuantity": { "type": "string", @@ -3996,6 +4174,262 @@ } } }, + "RateGroup": { + "id": "RateGroup", + "type": "object", + "properties": { + "applicableShippingLabels": { + "type": "array", + "description": "A list of shipping labels defining the products to which this rate group applies to. This is a disjunction: only one of the labels has to match for the rate group to apply. May only be empty for the last rate group of a service. Required.", + "items": { + "type": "string" + } + }, + "carrierRates": { + "type": "array", + "description": "A list of carrier rates that can be referred to by mainTable or singleValue.", + "items": { + "$ref": "CarrierRate" + } + }, + "mainTable": { + "$ref": "Table", + "description": "A table defining the rate group, when singleValue is not expressive enough. Can only be set if singleValue is not set." + }, + "singleValue": { + "$ref": "Value", + "description": "The value of the rate group (e.g. flat rate $10). Can only be set if mainTable and subtables are not set." + }, + "subtables": { + "type": "array", + "description": "A list of subtables referred to by mainTable. Can only be set if mainTable is set.", + "items": { + "$ref": "Table" + } + } + } + }, + "Row": { + "id": "Row", + "type": "object", + "properties": { + "cells": { + "type": "array", + "description": "The list of cells that constitute the row. Must have the same length as columnHeaders for two-dimensional tables, a length of 1 for one-dimensional tables. Required.", + "items": { + "$ref": "Value" + } + } + } + }, + "Service": { + "id": "Service", + "type": "object", + "properties": { + "active": { + "type": "boolean", + "description": "A boolean exposing the active status of the shipping service. Required." + }, + "currency": { + "type": "string", + "description": "The CLDR code of the currency to which this service applies. Must match that of the prices in rate groups." + }, + "deliveryCountry": { + "type": "string", + "description": "The CLDR territory code of the country to which the service applies. Required." + }, + "deliveryTime": { + "$ref": "DeliveryTime", + "description": "Time spent in various aspects from order to the delivery of the product. Required." + }, + "name": { + "type": "string", + "description": "Free-form name of the service. Must be unique within target account. Required." + }, + "rateGroups": { + "type": "array", + "description": "Shipping rate group definitions. Only the last one is allowed to have an empty applicableShippingLabels, which means \"everything else\". The other applicableShippingLabels must not overlap.", + "items": { + "$ref": "RateGroup" + } + } + } + }, + "ShippingSettings": { + "id": "ShippingSettings", + "type": "object", + "description": "The merchant account's shipping settings.", + "properties": { + "accountId": { + "type": "string", + "description": "The ID of the account to which these account shipping settings belong. Ignored upon update, always present in get request responses.", + "format": "uint64" + }, + "postalCodeGroups": { + "type": "array", + "description": "A list of postal code groups that can be referred to in services. Optional.", + "items": { + "$ref": "PostalCodeGroup" + } + }, + "services": { + "type": "array", + "description": "The target account's list of services. Optional.", + "items": { + "$ref": "Service" + } + } + } + }, + "ShippingsettingsCustomBatchRequest": { + "id": "ShippingsettingsCustomBatchRequest", + "type": "object", + "properties": { + "entries": { + "type": "array", + "description": "The request entries to be processed in the batch.", + "items": { + "$ref": "ShippingsettingsCustomBatchRequestEntry" + } + } + } + }, + "ShippingsettingsCustomBatchRequestEntry": { + "id": "ShippingsettingsCustomBatchRequestEntry", + "type": "object", + "description": "A batch entry encoding a single non-batch accountshipping request.", + "properties": { + "accountId": { + "type": "string", + "description": "The ID of the account for which to get/update account shipping settings.", + "format": "uint64" + }, + "batchId": { + "type": "integer", + "description": "An entry ID, unique within the batch request.", + "format": "uint32" + }, + "merchantId": { + "type": "string", + "description": "The ID of the managing account.", + "format": "uint64" + }, + "method": { + "type": "string" + }, + "shippingSettings": { + "$ref": "ShippingSettings", + "description": "The account shipping settings to update. Only defined if the method is update." + } + } + }, + "ShippingsettingsCustomBatchResponse": { + "id": "ShippingsettingsCustomBatchResponse", + "type": "object", + "properties": { + "entries": { + "type": "array", + "description": "The result of the execution of the batch requests.", + "items": { + "$ref": "ShippingsettingsCustomBatchResponseEntry" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponse\".", + "default": "content#shippingsettingsCustomBatchResponse" + } + } + }, + "ShippingsettingsCustomBatchResponseEntry": { + "id": "ShippingsettingsCustomBatchResponseEntry", + "type": "object", + "description": "A batch entry encoding a single non-batch shipping settings response.", + "properties": { + "batchId": { + "type": "integer", + "description": "The ID of the request entry to which this entry responds.", + "format": "uint32" + }, + "errors": { + "$ref": "Errors", + "description": "A list of errors defined if, and only if, the request failed." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsCustomBatchResponseEntry\".", + "default": "content#shippingsettingsCustomBatchResponseEntry" + }, + "shippingSettings": { + "$ref": "ShippingSettings", + "description": "The retrieved or updated account shipping settings." + } + } + }, + "ShippingsettingsGetSupportedCarriersResponse": { + "id": "ShippingsettingsGetSupportedCarriersResponse", + "type": "object", + "properties": { + "carriers": { + "type": "array", + "description": "A list of supported carriers. May be empty.", + "items": { + "$ref": "CarriersCarrier" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsGetSupportedCarriersResponse\".", + "default": "content#shippingsettingsGetSupportedCarriersResponse" + } + } + }, + "ShippingsettingsListResponse": { + "id": "ShippingsettingsListResponse", + "type": "object", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"content#shippingsettingsListResponse\".", + "default": "content#shippingsettingsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "The token for the retrieval of the next page of shipping settings." + }, + "resources": { + "type": "array", + "items": { + "$ref": "ShippingSettings" + } + } + } + }, + "Table": { + "id": "Table", + "type": "object", + "properties": { + "columnHeaders": { + "$ref": "Headers", + "description": "Headers of the table's columns. Optional: if not set then the table has only one dimension." + }, + "name": { + "type": "string", + "description": "Name of the table. Required for subtables, ignored for the main table." + }, + "rowHeaders": { + "$ref": "Headers", + "description": "Headers of the table's rows. Required." + }, + "rows": { + "type": "array", + "description": "The list of rows that constitute the table. Must have the same length as rowHeaders. Required.", + "items": { + "$ref": "Row" + } + } + } + }, "TestOrder": { "id": "TestOrder", "type": "object", @@ -4090,7 +4524,7 @@ }, "explicitMarketingPreference": { "type": "boolean", - "description": "If set, this indicates the user had a choice to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow. Optional." + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow. Optional." }, "fullName": { "type": "string", @@ -4279,6 +4713,33 @@ } } }, + "Value": { + "id": "Value", + "type": "object", + "description": "The single value of a rate group or the value of a rate group table's cell. Exactly one of noShipping, flatRate, pricePercentage, carrierRateName, subtableName must be set.", + "properties": { + "carrierRateName": { + "type": "string", + "description": "The name of a carrier rate referring to a carrier rate defined in the same rate group. Can only be set if all other fields are not set." + }, + "flatRate": { + "$ref": "Price", + "description": "A flat rate. Can only be set if all other fields are not set." + }, + "noShipping": { + "type": "boolean", + "description": "If true, then the product can't ship. Must be true when set, can only be set if all other fields are not set." + }, + "pricePercentage": { + "type": "string", + "description": "A percentage of the price represented as a number in decimal notation (e.g., \"5.4\"). Can only be set if all other fields are not set." + }, + "subtableName": { + "type": "string", + "description": "The name of a subtable. Can only be set in table cells (i.e., not for single values), and only if all other fields are not set." + } + } + }, "Weight": { "id": "Weight", "type": "object", @@ -6171,6 +6632,203 @@ ] } } + }, + "shippingsettings": { + "methods": { + "custombatch": { + "id": "content.shippingsettings.custombatch", + "path": "shippingsettings/batch", + "httpMethod": "POST", + "description": "Retrieves and updates the shipping settings of multiple accounts in a single request.", + "parameters": { + "dryRun": { + "type": "boolean", + "description": "Flag to run the request in dry-run mode.", + "location": "query" + } + }, + "request": { + "$ref": "ShippingsettingsCustomBatchRequest" + }, + "response": { + "$ref": "ShippingsettingsCustomBatchResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "get": { + "id": "content.shippingsettings.get", + "path": "{merchantId}/shippingsettings/{accountId}", + "httpMethod": "GET", + "description": "Retrieves the shipping settings of the account.", + "parameters": { + "accountId": { + "type": "string", + "description": "The ID of the account for which to get/update shipping settings.", + "required": true, + "format": "uint64", + "location": "path" + }, + "merchantId": { + "type": "string", + "description": "The ID of the managing account.", + "required": true, + "format": "uint64", + "location": "path" + } + }, + "parameterOrder": [ + "merchantId", + "accountId" + ], + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "getsupportedcarriers": { + "id": "content.shippingsettings.getsupportedcarriers", + "path": "{merchantId}/supportedCarriers", + "httpMethod": "GET", + "description": "Retrieves supported carriers and carrier services for an account.", + "parameters": { + "merchantId": { + "type": "string", + "description": "The ID of the account for which to retrieve the supported carriers.", + "required": true, + "format": "uint64", + "location": "path" + } + }, + "parameterOrder": [ + "merchantId" + ], + "response": { + "$ref": "ShippingsettingsGetSupportedCarriersResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "list": { + "id": "content.shippingsettings.list", + "path": "{merchantId}/shippingsettings", + "httpMethod": "GET", + "description": "Lists the shipping settings of the sub-accounts in your Merchant Center account.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "The maximum number of shipping settings to return in the response, used for paging.", + "format": "uint32", + "location": "query" + }, + "merchantId": { + "type": "string", + "description": "The ID of the managing account.", + "required": true, + "format": "uint64", + "location": "path" + }, + "pageToken": { + "type": "string", + "description": "The token returned by the previous request.", + "location": "query" + } + }, + "parameterOrder": [ + "merchantId" + ], + "response": { + "$ref": "ShippingsettingsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "patch": { + "id": "content.shippingsettings.patch", + "path": "{merchantId}/shippingsettings/{accountId}", + "httpMethod": "PATCH", + "description": "Updates the shipping settings of the account. This method supports patch semantics.", + "parameters": { + "accountId": { + "type": "string", + "description": "The ID of the account for which to get/update shipping settings.", + "required": true, + "format": "uint64", + "location": "path" + }, + "dryRun": { + "type": "boolean", + "description": "Flag to run the request in dry-run mode.", + "location": "query" + }, + "merchantId": { + "type": "string", + "description": "The ID of the managing account.", + "required": true, + "format": "uint64", + "location": "path" + } + }, + "parameterOrder": [ + "merchantId", + "accountId" + ], + "request": { + "$ref": "ShippingSettings" + }, + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + }, + "update": { + "id": "content.shippingsettings.update", + "path": "{merchantId}/shippingsettings/{accountId}", + "httpMethod": "PUT", + "description": "Updates the shipping settings of the account.", + "parameters": { + "accountId": { + "type": "string", + "description": "The ID of the account for which to get/update shipping settings.", + "required": true, + "format": "uint64", + "location": "path" + }, + "dryRun": { + "type": "boolean", + "description": "Flag to run the request in dry-run mode.", + "location": "query" + }, + "merchantId": { + "type": "string", + "description": "The ID of the managing account.", + "required": true, + "format": "uint64", + "location": "path" + } + }, + "parameterOrder": [ + "merchantId", + "accountId" + ], + "request": { + "$ref": "ShippingSettings" + }, + "response": { + "$ref": "ShippingSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/content" + ] + } + } } } } diff --git a/etc/api/content/v2sandbox/content-api.json b/etc/api/content/v2sandbox/content-api.json index 6684e6b3fd..d1d642d011 100644 --- a/etc/api/content/v2sandbox/content-api.json +++ b/etc/api/content/v2sandbox/content-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Dz8RaMyeGwYEG1L5shQuF50_EkE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/5YRb4l5DodMV9xyOy-Xnx-Jl5b0\"", "discoveryVersion": "v1", "id": "content:v2sandbox", "name": "content", "canonicalName": "Shopping Content", "version": "v2sandbox", - "revision": "20160331", + "revision": "20160905", "title": "Content API for Shopping", "description": "Manages product items, inventory, and Merchant Center accounts for Google Shopping.", "ownerDomain": "google.com", @@ -127,6 +127,10 @@ "type": "boolean", "description": "Whether the order was acknowledged." }, + "channelType": { + "type": "string", + "description": "The channel type of the order: \"purchaseOnGoogle\" or \"googleExpress\"." + }, "customer": { "$ref": "OrderCustomer", "description": "The details of the customer who placed the order." @@ -277,7 +281,7 @@ }, "reason": { "type": "string", - "description": "The reason for the cancellation." + "description": "The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from POG until you make an update to that product. This will not affect your Shopping ads." }, "reasonText": { "type": "string", @@ -295,7 +299,7 @@ }, "explicitMarketingPreference": { "type": "boolean", - "description": "If set, this indicates the user had a choice to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow." + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow." }, "fullName": { "type": "string", @@ -1522,7 +1526,7 @@ }, "explicitMarketingPreference": { "type": "boolean", - "description": "If set, this indicates the user had a choice to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow. Optional." + "description": "If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the Purchases on Google checkout flow. Optional." }, "fullName": { "type": "string", diff --git a/etc/api/customsearch/v1/customsearch-api.json b/etc/api/customsearch/v1/customsearch-api.json index c6bd1f23cf..421371335e 100644 --- a/etc/api/customsearch/v1/customsearch-api.json +++ b/etc/api/customsearch/v1/customsearch-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/XzGRxEeySE6tqu0KMmAajCfq0UU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/6uDmKuIsmBzjIYdBp6ZSuZP4_cw\"", "discoveryVersion": "v1", "id": "customsearch:v1", "name": "customsearch", "version": "v1", - "revision": "20151130", + "revision": "20160411", "title": "CustomSearch API", "description": "Lets you search over a website or collection of websites", "ownerDomain": "google.com", diff --git a/etc/api/dataflow/v1b3/dataflow-api.json b/etc/api/dataflow/v1b3/dataflow-api.json index 84fc35a2ce..e36e8cd800 100644 --- a/etc/api/dataflow/v1b3/dataflow-api.json +++ b/etc/api/dataflow/v1b3/dataflow-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/-PCQObxeMXLhOncDOKreF3FN9IU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/947N7-PR3f8n42WFCweiQxxRQdA\"", "discoveryVersion": "v1", "id": "dataflow:v1b3", "name": "dataflow", "version": "v1b3", - "revision": "20160331", + "revision": "20160908", "title": "Google Dataflow API", "description": "Develops and executes data processing patterns like ETL, batch computation, and continuous computation.", "ownerDomain": "google.com", @@ -113,6 +113,56 @@ } }, "schemas": { + "GetDebugConfigRequest": { + "id": "GetDebugConfigRequest", + "type": "object", + "description": "Request to get updated debug configuration for component.", + "properties": { + "workerId": { + "type": "string", + "description": "The worker id, i.e., VM hostname." + }, + "componentId": { + "type": "string", + "description": "The internal component id for which debug configuration is requested." + } + } + }, + "GetDebugConfigResponse": { + "id": "GetDebugConfigResponse", + "type": "object", + "description": "Response to a get debug configuration request.", + "properties": { + "config": { + "type": "string", + "description": "The encoded debug configuration for the requested component." + } + } + }, + "SendDebugCaptureRequest": { + "id": "SendDebugCaptureRequest", + "type": "object", + "description": "Request to send encoded debug information.", + "properties": { + "workerId": { + "type": "string", + "description": "The worker id, i.e., VM hostname." + }, + "componentId": { + "type": "string", + "description": "The internal component id for which debug information is sent." + }, + "data": { + "type": "string", + "description": "The encoded debug information." + } + } + }, + "SendDebugCaptureResponse": { + "id": "SendDebugCaptureResponse", + "type": "object", + "description": "Response to a send capture request. nothing" + }, "Job": { "id": "Job", "type": "object", @@ -217,6 +267,13 @@ "items": { "type": "string" } + }, + "labels": { + "type": "object", + "description": "User-defined labels for this job. The labels map can contain no more than 64 entries. Entries of the labels map are UTF8 strings that comply with the following restrictions: * Keys must conform to regexp: \\p{Ll}\\p{Lo}{0,62} * Values must conform to regexp: [\\p{Ll}\\p{Lo}\\p{N}_-]{0,63} * Both keys and values are additionally constrained to be \u003c= 128 bytes in size.", + "additionalProperties": { + "type": "string" + } } } }, @@ -280,7 +337,7 @@ "description": "Experimental settings.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -378,7 +435,7 @@ "description": "Extra arguments for this worker pool.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "network": { @@ -387,7 +444,7 @@ }, "subnetwork": { "type": "string", - "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of the form \"zones/ZONE/subnetworks/SUBNETWORK\"." + "description": "Subnetwork to which VMs will be assigned, if desired. Expected to be of the form \"regions/REGION/subnetworks/SUBNETWORK\"." }, "workerHarnessContainerImage": { "type": "string", @@ -397,6 +454,15 @@ "type": "integer", "description": "The number of threads per worker harness. If empty or unspecified, the service will choose a number of threads (according to the number of cores on the selected machine type for batch, or 1 by convention for streaming).", "format": "int32" + }, + "ipConfiguration": { + "type": "string", + "description": "Configuration for VM IPs.", + "enum": [ + "WORKER_IP_UNSPECIFIED", + "WORKER_IP_PUBLIC", + "WORKER_IP_PRIVATE" + ] } } }, @@ -774,6 +840,24 @@ } } }, + "CreateJobFromTemplateRequest": { + "id": "CreateJobFromTemplateRequest", + "type": "object", + "description": "Request to create a Dataflow job.", + "properties": { + "gcsPath": { + "type": "string", + "description": "A path to the serialized JSON representation of the job." + }, + "parameters": { + "type": "object", + "description": "Dynamic parameterization of the job's runtime environment.", + "additionalProperties": { + "type": "string" + } + } + } + }, "ReportWorkItemStatusRequest": { "id": "ReportWorkItemStatusRequest", "type": "object", @@ -825,9 +909,16 @@ "$ref": "Status" } }, + "counterUpdates": { + "type": "array", + "description": "Worker output counters for this WorkItem.", + "items": { + "$ref": "CounterUpdate" + } + }, "metricUpdates": { "type": "array", - "description": "Worker output metrics (counters) for this WorkItem.", + "description": "DEPRECATED in favor of counter_updates.", "items": { "$ref": "MetricUpdate" } @@ -879,12 +970,295 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } } }, + "CounterUpdate": { + "id": "CounterUpdate", + "type": "object", + "description": "An update to a Counter sent from a worker.", + "properties": { + "nameAndKind": { + "$ref": "NameAndKind", + "description": "Counter name and aggregation type." + }, + "shortId": { + "type": "string", + "description": "The service-generated short identifier for this counter. The short_id -\u003e (name, metadata) mapping is constant for the lifetime of a job.", + "format": "int64" + }, + "structuredNameAndMetadata": { + "$ref": "CounterStructuredNameAndMetadata", + "description": "Counter structured name and metadata." + }, + "cumulative": { + "type": "boolean", + "description": "True if this counter is reported as the total cumulative aggregate value accumulated since the worker started working on this WorkItem. By default this is false, indicating that this counter is reported as a delta." + }, + "integer": { + "$ref": "SplitInt64", + "description": "Integer value for Sum, Max, Min." + }, + "floatingPoint": { + "type": "number", + "description": "Floating point value for Sum, Max, Min.", + "format": "double" + }, + "boolean": { + "type": "boolean", + "description": "Boolean value for And, Or." + }, + "integerMean": { + "$ref": "IntegerMean", + "description": "Integer mean aggregation value for Mean." + }, + "floatingPointMean": { + "$ref": "FloatingPointMean", + "description": "Floating point mean aggregation value for Mean." + }, + "integerList": { + "$ref": "IntegerList", + "description": "List of integers, for Set." + }, + "floatingPointList": { + "$ref": "FloatingPointList", + "description": "List of floating point numbers, for Set." + }, + "stringList": { + "$ref": "StringList", + "description": "List of strings, for Set." + }, + "internal": { + "type": "any", + "description": "Value for internally-defined counters used by the Dataflow service." + } + } + }, + "NameAndKind": { + "id": "NameAndKind", + "type": "object", + "description": "Basic metadata about a counter.", + "properties": { + "name": { + "type": "string", + "description": "Name of the counter." + }, + "kind": { + "type": "string", + "description": "Counter aggregation kind.", + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET" + ] + } + } + }, + "CounterStructuredNameAndMetadata": { + "id": "CounterStructuredNameAndMetadata", + "type": "object", + "description": "A single message which encapsulates structured name and metadata for a given counter.", + "properties": { + "name": { + "$ref": "CounterStructuredName", + "description": "Structured name of the counter." + }, + "metadata": { + "$ref": "CounterMetadata", + "description": "Metadata associated with a counter" + } + } + }, + "CounterStructuredName": { + "id": "CounterStructuredName", + "type": "object", + "description": "Identifies a counter within a per-job namespace. Counters whose structured names are the same get merged into a single value for the job.", + "properties": { + "name": { + "type": "string", + "description": "Counter name. Not necessarily globally-unique, but unique within the context of the other fields. Required." + }, + "standardOrigin": { + "type": "string", + "description": "One of the standard Origins defined above.", + "enum": [ + "DATAFLOW", + "USER" + ] + }, + "otherOrigin": { + "type": "string", + "description": "A string containing the origin of the counter." + }, + "originalStepName": { + "type": "string", + "description": "System generated name of the original step in the user's graph, before optimization." + }, + "componentStepName": { + "type": "string", + "description": "Name of the optimized step being executed by the workers." + }, + "executionStepName": { + "type": "string", + "description": "Name of the stage. An execution step contains multiple component steps." + }, + "workerId": { + "type": "string", + "description": "ID of a particular worker." + }, + "portion": { + "type": "string", + "description": "Portion of this counter, either key or value.", + "enum": [ + "ALL", + "KEY", + "VALUE" + ] + } + } + }, + "CounterMetadata": { + "id": "CounterMetadata", + "type": "object", + "description": "CounterMetadata includes all static non-name non-value counter attributes.", + "properties": { + "kind": { + "type": "string", + "description": "Counter aggregation kind.", + "enum": [ + "INVALID", + "SUM", + "MAX", + "MIN", + "MEAN", + "OR", + "AND", + "SET" + ] + }, + "description": { + "type": "string", + "description": "Human-readable description of the counter semantics." + }, + "standardUnits": { + "type": "string", + "description": "System defined Units, see above enum.", + "enum": [ + "BYTES", + "BYTES_PER_SEC", + "MILLISECONDS", + "MICROSECONDS", + "NANOSECONDS", + "TIMESTAMP_MSEC", + "TIMESTAMP_USEC", + "TIMESTAMP_NSEC" + ] + }, + "otherUnits": { + "type": "string", + "description": "A string referring to the unit type." + } + } + }, + "SplitInt64": { + "id": "SplitInt64", + "type": "object", + "description": "A representation of an int64, n, that is immune to precision loss when encoded in JSON.", + "properties": { + "lowBits": { + "type": "integer", + "description": "The low order bits: n & 0xffffffff.", + "format": "uint32" + }, + "highBits": { + "type": "integer", + "description": "The high order bits, including the sign: n \u003e\u003e 32.", + "format": "int32" + } + } + }, + "IntegerMean": { + "id": "IntegerMean", + "type": "object", + "description": "A representation of an integer mean metric contribution.", + "properties": { + "sum": { + "$ref": "SplitInt64", + "description": "The sum of all values being aggregated." + }, + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + } + } + }, + "FloatingPointMean": { + "id": "FloatingPointMean", + "type": "object", + "description": "A representation of a floating point mean metric contribution.", + "properties": { + "sum": { + "type": "number", + "description": "The sum of all values being aggregated.", + "format": "double" + }, + "count": { + "$ref": "SplitInt64", + "description": "The number of values being aggregated." + } + } + }, + "IntegerList": { + "id": "IntegerList", + "type": "object", + "description": "A metric value representing a list of integers.", + "properties": { + "elements": { + "type": "array", + "description": "Elements of the list.", + "items": { + "$ref": "SplitInt64" + } + } + } + }, + "FloatingPointList": { + "id": "FloatingPointList", + "type": "object", + "description": "A metric value representing a list of floating point numbers.", + "properties": { + "elements": { + "type": "array", + "description": "Elements of the list.", + "items": { + "type": "number", + "format": "double" + } + } + } + }, + "StringList": { + "id": "StringList", + "type": "object", + "description": "A metric value representing a list of strings.", + "properties": { + "elements": { + "type": "array", + "description": "Elements of the list.", + "items": { + "type": "string" + } + } + } + }, "ApproximateReportedProgress": { "id": "ApproximateReportedProgress", "type": "object", @@ -901,11 +1275,11 @@ }, "remainingParallelism": { "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the input of this WorkItem that has not been consumed yet (i.e. can be delegated to a new WorkItem via dynamic splitting). \"Amount of parallelism\" refers to how many non-empty parts of the input can be read in parallel. This does not necessarily equal number of records. An input that can be read in parallel down to the individual records is called \"perfectly splittable\". An example of non-perfectly parallelizable input is a block-compressed file format where a block of records has to be read as a whole, but different blocks can be read in parallel. Examples: * If we have read 30 records out of 50 in a perfectly splittable 50-record input, this value should be 20. * If we are reading through block 3 in a block-compressed file consisting of 5 blocks, this value should be 2 (since blocks 4 and 5 can be processed in parallel by new work items via dynamic splitting). * If we are reading through the last block in a block-compressed file, or reading or processing the last record in a perfectly splittable input, this value should be 0, because the remainder of the work item cannot be further split." + "description": "Total amount of parallelism in the input of this task that remains, (i.e. can be delegated to this task and any new tasks via dynamic splitting). Always at least 1 for non-finished work items and 0 for finished. \"Amount of parallelism\" refers to how many non-empty parts of the input can be read in parallel. This does not necessarily equal number of records. An input that can be read in parallel down to the individual records is called \"perfectly splittable\". An example of non-perfectly parallelizable input is a block-compressed file format where a block of records has to be read as a whole, but different blocks can be read in parallel. Examples: * If we are processing record #30 (starting at 1) out of 50 in a perfectly splittable 50-record input, this value should be 21 (20 remaining + 1 current). * If we are reading through block 3 in a block-compressed file consisting of 5 blocks, this value should be 3 (since blocks 4 and 5 can be processed in parallel by new tasks via dynamic splitting and the current task remains processing block 3). * If we are reading through the last block in a block-compressed file, or reading or processing the last record in a perfectly splittable input, this value should be 1, because apart from the current task, no additional remainder can be split off." }, "consumedParallelism": { "$ref": "ReportedParallelism", - "description": "Total amount of parallelism in the portion of input of this work item that has already been consumed. In the first two examples above (see remaining_parallelism), the value should be 30 or 3 respectively. The sum of remaining_parallelism and consumed_parallelism should equal the total amount of parallelism in this work item. If specified, must be finite." + "description": "Total amount of parallelism in the portion of input of this task that has already been consumed and is no longer active. In the first two examples above (see remaining_parallelism), the value should be 29 or 2 respectively. The sum of remaining_parallelism and consumed_parallelism should equal the total amount of parallelism in this work item. If specified, must be finite." } } }, @@ -1236,6 +1610,13 @@ "description": "The index value to use for the next report sent by the worker. Note: If the report call fails for whatever reason, the worker should reuse this index for subsequent report attempts.", "format": "int64" }, + "metricShortId": { + "type": "array", + "description": "The short ids that workers should use in subsequent metric updates. Workers should strive to use short ids whenever possible, but it is ok to request the short_id again if a worker lost track of it (e.g. if the worker is recovering from a crash). NOTE: it is possible that the response may have short ids for a subset of the metrics.", + "items": { + "$ref": "MetricShortId" + } + }, "suggestedStopPosition": { "$ref": "Position", "description": "Obsolete, always empty." @@ -1262,6 +1643,23 @@ } } }, + "MetricShortId": { + "id": "MetricShortId", + "type": "object", + "description": "The metric short id is returned to the user alongside an offset into ReportWorkItemStatusRequest", + "properties": { + "metricIndex": { + "type": "integer", + "description": "The index of the corresponding metric in the ReportWorkItemStatusRequest. Required.", + "format": "int32" + }, + "shortId": { + "type": "string", + "description": "The service-generated short identifier for the metric.", + "format": "int64" + } + } + }, "LeaseWorkItemRequest": { "id": "LeaseWorkItemRequest", "type": "object", @@ -1358,6 +1756,10 @@ "$ref": "StreamingComputationTask", "description": "Additional information for StreamingComputationTask WorkItems." }, + "streamingConfigTask": { + "$ref": "StreamingConfigTask", + "description": "Additional information for StreamingConfigTask WorkItems." + }, "reportStatusInterval": { "type": "string", "description": "Recommended reporting interval." @@ -1412,6 +1814,10 @@ "type": "string", "description": "User-provided name of this operation." }, + "originalName": { + "type": "string", + "description": "System-defined name for the operation in the original workflow graph." + }, "read": { "$ref": "ReadInstruction", "description": "Additional information for Read instructions." @@ -1613,6 +2019,14 @@ "items": { "$ref": "SideInputInfo" } + }, + "originalCombineValuesStepName": { + "type": "string", + "description": "If this instruction includes a combining function, this is the name of the CombineValues instruction lifted into this instruction." + }, + "originalCombineValuesInputStoreName": { + "type": "string", + "description": "If this instruction includes a combining function this is the name of the intermediate store between the GBK and the CombineValues." } } }, @@ -1643,6 +2057,10 @@ "type": "string", "description": "System-defined name of this output. Unique across the workflow." }, + "originalName": { + "type": "string", + "description": "System-defined name for this output in the original workflow graph. Outputs that do not contribute to an original instruction do not set this." + }, "codec": { "type": "object", "description": "The codec to use to encode data being written via this output.", @@ -1650,6 +2068,14 @@ "type": "any", "description": "Properties of the object." } + }, + "onlyCountKeyBytes": { + "type": "boolean", + "description": "For system-generated byte and mean byte metrics, certain instructions should only report the key size." + }, + "onlyCountValueBytes": { + "type": "boolean", + "description": "For system-generated byte and mean byte metrics, certain instructions should only report the value size." } } }, @@ -2122,6 +2548,53 @@ } } }, + "StreamingConfigTask": { + "id": "StreamingConfigTask", + "type": "object", + "description": "A task that carries configuration information for streaming computations.", + "properties": { + "streamingComputationConfigs": { + "type": "array", + "description": "Set of computation configuration information.", + "items": { + "$ref": "StreamingComputationConfig" + } + }, + "userStepToStateFamilyNameMap": { + "type": "object", + "description": "Map from user step names to state families.", + "additionalProperties": { + "type": "string" + } + } + } + }, + "StreamingComputationConfig": { + "id": "StreamingComputationConfig", + "type": "object", + "description": "Configuration information for a single streaming computation.", + "properties": { + "computationId": { + "type": "string", + "description": "Unique identifier for this computation." + }, + "systemName": { + "type": "string", + "description": "System defined name for this computation." + }, + "stageName": { + "type": "string", + "description": "Stage name of this computation." + }, + "instructions": { + "type": "array", + "description": "Instructions that comprise the computation.", + "items": { + "$ref": "ParallelInstruction" + } + } + } + }, "SendWorkerMessagesRequest": { "id": "SendWorkerMessagesRequest", "type": "object", @@ -2415,6 +2888,7 @@ "type": "string", "description": "The kind of filter to use.", "enum": [ + "UNKNOWN", "ALL", "TERMINATED", "ACTIVE" @@ -2492,6 +2966,78 @@ } }, "resources": { + "debug": { + "methods": { + "getConfig": { + "id": "dataflow.projects.jobs.debug.getConfig", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig", + "httpMethod": "POST", + "description": "Get encoded debug configuration for component. Not cacheable.", + "parameters": { + "projectId": { + "type": "string", + "description": "The project id.", + "required": true, + "location": "path" + }, + "jobId": { + "type": "string", + "description": "The job id.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "request": { + "$ref": "GetDebugConfigRequest" + }, + "response": { + "$ref": "GetDebugConfigResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/userinfo.email" + ] + }, + "sendCapture": { + "id": "dataflow.projects.jobs.debug.sendCapture", + "path": "v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture", + "httpMethod": "POST", + "description": "Send encoded debug capture data for component.", + "parameters": { + "projectId": { + "type": "string", + "description": "The project id.", + "required": true, + "location": "path" + }, + "jobId": { + "type": "string", + "description": "The job id.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId", + "jobId" + ], + "request": { + "$ref": "SendDebugCaptureRequest" + }, + "response": { + "$ref": "SendDebugCaptureResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } + }, "messages": { "methods": { "list": { @@ -2634,6 +3180,37 @@ } } } + }, + "templates": { + "methods": { + "create": { + "id": "dataflow.projects.templates.create", + "path": "v1b3/projects/{projectId}/templates", + "httpMethod": "POST", + "description": "Creates a dataflow job from a template.", + "parameters": { + "projectId": { + "type": "string", + "description": "The project which owns the job.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "projectId" + ], + "request": { + "$ref": "CreateJobFromTemplateRequest" + }, + "response": { + "$ref": "Job" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/userinfo.email" + ] + } + } } } } diff --git a/etc/api/dataproc/v1/dataproc-api.json b/etc/api/dataproc/v1/dataproc-api.json index 62954324b2..bec4b2787a 100644 --- a/etc/api/dataproc/v1/dataproc-api.json +++ b/etc/api/dataproc/v1/dataproc-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/SJDnrP-zMdgKOtIcX7eybyyfJxs\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/tFUpSbikiYUx1YQKdRQ2bGGumuA\"", "discoveryVersion": "v1", "id": "dataproc:v1", "name": "dataproc", "version": "v1", - "revision": "20160219", + "revision": "20160503", "title": "Google Cloud Dataproc API", - "description": "An API for managing Hadoop-based clusters and jobs on Google Cloud Platform.", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -105,31 +105,11 @@ "scopes": { "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" - }, - "https://www.googleapis.com/auth/logging.admin": { - "description": "Administrate log data for your projects" - }, - "https://www.googleapis.com/auth/logging.read": { - "description": "View log data for your projects" - }, - "https://www.googleapis.com/auth/logging.write": { - "description": "Submit log data for your projects" } } } }, "schemas": { - "Media": { - "id": "Media", - "type": "object", - "description": "Media resource.", - "properties": { - "resourceName": { - "type": "string", - "description": "Name of the media resource." - } - } - }, "Cluster": { "id": "Cluster", "type": "object", @@ -175,7 +155,7 @@ }, "gceClusterConfig": { "$ref": "GceClusterConfig", - "description": "[Optional] The shared Google Compute Engine config settings for all instances in a cluster." + "description": "[Required] The shared Google Compute Engine config settings for all instances in a cluster." }, "masterConfig": { "$ref": "InstanceGroupConfig", @@ -1141,84 +1121,6 @@ } }, "resources": { - "media": { - "methods": { - "upload": { - "id": "dataproc.media.upload", - "path": "v1/media/{+resourceName}", - "httpMethod": "POST", - "description": "Method for media upload. Upload is supported on the URI `/upload/v1/media/{+name}`.", - "parameters": { - "resourceName": { - "type": "string", - "description": "Name of the media that is being downloaded. See ByteStream.ReadRequest.resource_name.", - "required": true, - "pattern": "^.*$", - "location": "path" - } - }, - "parameterOrder": [ - "resourceName" - ], - "request": { - "$ref": "Media" - }, - "response": { - "$ref": "Media" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read", - "https://www.googleapis.com/auth/logging.write" - ], - "supportsMediaUpload": true, - "mediaUpload": { - "accept": [ - "*/*" - ], - "protocols": { - "simple": { - "multipart": true, - "path": "/upload/v1/media/{+resourceName}" - }, - "resumable": { - "multipart": true, - "path": "/resumable/upload/v1/media/{+resourceName}" - } - } - } - }, - "download": { - "id": "dataproc.media.download", - "path": "v1/media/{+resourceName}", - "httpMethod": "GET", - "description": "Method for media download. Download is supported on the URI `/v1/media/{+name}?alt=media`.", - "parameters": { - "resourceName": { - "type": "string", - "description": "Name of the media that is being downloaded. See ByteStream.ReadRequest.resource_name.", - "required": true, - "pattern": "^.*$", - "location": "path" - } - }, - "parameterOrder": [ - "resourceName" - ], - "response": { - "$ref": "Media" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/logging.admin", - "https://www.googleapis.com/auth/logging.read", - "https://www.googleapis.com/auth/logging.write" - ], - "supportsMediaDownload": true - } - } - }, "projects": { "resources": { "regions": { @@ -1284,7 +1186,7 @@ }, "updateMask": { "type": "string", - "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: { \"config\":{ \"workerConfig\":{ \"numInstances\":\"5\" } } } Note: Currently, config.worker_config.num_instances is the only field that can be updated.", + "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: { \"config\":{ \"workerConfig\":{ \"numInstances\":\"5\" } } } Similarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the `PATCH` request body would be set as follows: { \"config\":{ \"secondaryWorkerConfig\":{ \"numInstances\":\"5\" } } } Note: Currently, config.worker_config.num_instances and config.secondary_worker_config.num_instances are the only fields that can be updated.", "location": "query" } }, diff --git a/etc/api/dataproc/v1alpha1/dataproc-api.json b/etc/api/dataproc/v1alpha1/dataproc-api.json index afc3216329..db174e8f75 100644 --- a/etc/api/dataproc/v1alpha1/dataproc-api.json +++ b/etc/api/dataproc/v1alpha1/dataproc-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/yEGnz7qJE4H0ncVA8l2NAK4qges\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/SuGBALYSLzjdcbguynWOEdgixyw\"", "discoveryVersion": "v1", "id": "dataproc:v1alpha1", "name": "dataproc", "version": "v1alpha1", - "revision": "20160219", + "revision": "20160503", "title": "Google Cloud Dataproc API", - "description": "An API for managing Hadoop-based clusters and jobs on Google Cloud Platform.", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/dataproc/v1beta1/dataproc-api.json b/etc/api/dataproc/v1beta1/dataproc-api.json index 5a3c5c648f..baca3db1f3 100644 --- a/etc/api/dataproc/v1beta1/dataproc-api.json +++ b/etc/api/dataproc/v1beta1/dataproc-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/moJSD8ChiA3_GeWvn2rNFBXMhlQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/xUykUeDoZBMkhqViXbAjUkEVLQw\"", "discoveryVersion": "v1", "id": "dataproc:v1beta1", "name": "dataproc", "version": "v1beta1", - "revision": "20160219", + "revision": "20160503", "title": "Google Cloud Dataproc API", - "description": "An API for managing Hadoop-based clusters and jobs on Google Cloud Platform.", + "description": "Manages Hadoop-based clusters and jobs on Google Cloud Platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -155,7 +155,7 @@ }, "gceClusterConfiguration": { "$ref": "GceClusterConfiguration", - "description": "[Optional] The shared Google Compute Engine configuration settings for all instances in a cluster." + "description": "[Required] The shared Google Compute Engine configuration settings for all instances in a cluster." }, "masterConfiguration": { "$ref": "InstanceGroupConfiguration", @@ -1000,87 +1000,6 @@ "type": "object", "description": "The request message for Operations.CancelOperation." }, - "SetIamPolicyRequest": { - "id": "SetIamPolicyRequest", - "type": "object", - "description": "Request message for `SetIamPolicy` method.", - "properties": { - "policy": { - "$ref": "Policy", - "description": "REQUIRED: The complete policy to be applied to the `resource`. The size of the policy is limited to a few 10s of KB. An empty policy is a valid policy but certain Cloud Platform services (such as Projects) might reject them." - } - } - }, - "Policy": { - "id": "Policy", - "type": "object", - "description": "Defines an Identity and Access Management (IAM) policy. It is used to specify access control policies for Cloud Platform resources. A `Policy` consists of a list of `bindings`. A `Binding` binds a list of `members` to a `role`, where the members can be user accounts, Google groups, Google domains, and service accounts. A `role` is a named list of permissions defined by IAM. **Example** { \"bindings\": [ { \"role\": \"roles/owner\", \"members\": [ \"user:mike@example.com\", \"group:admins@example.com\", \"domain:google.com\", \"serviceAccount:my-other-app@appspot.gserviceaccount.com\", ] }, { \"role\": \"roles/viewer\", \"members\": [\"user:sean@example.com\"] } ] } For a description of IAM and its features, see the [IAM developer's guide](https://cloud.google.com/iam).", - "properties": { - "version": { - "type": "integer", - "description": "Version of the `Policy`. The default version is 0.", - "format": "int32" - }, - "bindings": { - "type": "array", - "description": "Associates a list of `members` to a `role`. Multiple `bindings` must not be specified for the same `role`. `bindings` with no members will result in an error.", - "items": { - "$ref": "Binding" - } - }, - "etag": { - "type": "string", - "description": "`etag` is used for optimistic concurrency control as a way to help prevent simultaneous updates of a policy from overwriting each other. It is strongly suggested that systems make use of the `etag` in the read-modify-write cycle to perform policy updates in order to avoid race conditions: An `etag` is returned in the response to `getIamPolicy`, and systems are expected to put that etag in the request to `setIamPolicy` to ensure that their change will be applied to the same version of the policy. If no `etag` is provided in the call to `setIamPolicy`, then the existing policy is overwritten blindly.", - "format": "byte" - } - } - }, - "Binding": { - "id": "Binding", - "type": "object", - "description": "Associates `members` with a `role`.", - "properties": { - "role": { - "type": "string", - "description": "Role that is assigned to `members`. For example, `roles/viewer`, `roles/editor`, or `roles/owner`. Required" - }, - "members": { - "type": "array", - "description": "Specifies the identities requesting access for a Cloud Platform resource. `members` can have the following values: * `allUsers`: A special identifier that represents anyone who is on the internet; with or without a Google account. * `allAuthenticatedUsers`: A special identifier that represents anyone who is authenticated with a Google account or a service account. * `user:{emailid}`: An email address that represents a specific Google account. For example, `alice@gmail.com` or `joe@example.com`. * `serviceAccount:{emailid}`: An email address that represents a service account. For example, `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An email address that represents a Google group. For example, `admins@example.com`. * `domain:{domain}`: A Google Apps domain name that represents all the users of that domain. For example, `google.com` or `example.com`.", - "items": { - "type": "string" - } - } - } - }, - "TestIamPermissionsRequest": { - "id": "TestIamPermissionsRequest", - "type": "object", - "description": "Request message for `TestIamPermissions` method.", - "properties": { - "permissions": { - "type": "array", - "description": "The set of permissions to check for the `resource`. Permissions with wildcards (such as '*' or 'storage.*') are not allowed. For more information see IAM Overview.", - "items": { - "type": "string" - } - } - } - }, - "TestIamPermissionsResponse": { - "id": "TestIamPermissionsResponse", - "type": "object", - "description": "Response message for `TestIamPermissions` method.", - "properties": { - "permissions": { - "type": "array", - "description": "A subset of `TestPermissionsRequest.permissions` that the caller is allowed.", - "items": { - "type": "string" - } - } - } - }, "DiagnoseClusterResults": { "id": "DiagnoseClusterResults", "type": "object", @@ -1311,7 +1230,7 @@ }, "updateMask": { "type": "string", - "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 configuration.worker_configuration.num_instances, and the `PATCH` request body would specify the new value, as follows: { \"configuration\":{ \"workerConfiguration\":{ \"numInstances\":\"5\" } } } Note: Currently, configuration.worker_configuration.num_instances is the only field that can be updated.", + "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 configuration.worker_configuration.num_instances, and the `PATCH` request body would specify the new value, as follows: { \"configuration\":{ \"workerConfiguration\":{ \"numInstances\":\"5\" } } } Similarly, to change the number of preemptible workers in a cluster to 5, the update_mask parameter would be config.secondary_worker_config.num_instances, and the `PATCH` request body would be set as follows: { \"config\":{ \"secondaryWorkerConfig\":{ \"numInstances\":\"5\" } } } Note: Currently, config.worker_config.num_instances and config.secondary_worker_config.num_instances are the only fields that can be updated.", "location": "query" } }, @@ -1455,84 +1374,6 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "setIamPolicy": { - "id": "dataproc.projects.clusters.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy is being specified. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `setIamPolicy` documentation.", - "required": true, - "pattern": "^projects/[^/]*/clusters/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "request": { - "$ref": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "getIamPolicy": { - "id": "dataproc.projects.clusters.getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a `resource`. Returns an empty policy if the resource exists and does not have a policy set.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `getIamPolicy` documentation.", - "required": true, - "pattern": "^projects/[^/]*/clusters/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "testIamPermissions": { - "id": "dataproc.projects.clusters.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy detail is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `testIamPermissions` documentation.", - "required": true, - "pattern": "^projects/[^/]*/clusters/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } }, @@ -1705,84 +1546,6 @@ "scopes": [ "https://www.googleapis.com/auth/cloud-platform" ] - }, - "setIamPolicy": { - "id": "dataproc.projects.jobs.setIamPolicy", - "path": "v1beta1/{+resource}:setIamPolicy", - "httpMethod": "POST", - "description": "Sets the access control policy on the specified resource. Replaces any existing policy.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy is being specified. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `setIamPolicy` documentation.", - "required": true, - "pattern": "^projects/[^/]*/jobs/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "request": { - "$ref": "SetIamPolicyRequest" - }, - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "getIamPolicy": { - "id": "dataproc.projects.jobs.getIamPolicy", - "path": "v1beta1/{+resource}:getIamPolicy", - "httpMethod": "GET", - "description": "Gets the access control policy for a `resource`. Returns an empty policy if the resource exists and does not have a policy set.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `getIamPolicy` documentation.", - "required": true, - "pattern": "^projects/[^/]*/jobs/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "response": { - "$ref": "Policy" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] - }, - "testIamPermissions": { - "id": "dataproc.projects.jobs.testIamPermissions", - "path": "v1beta1/{+resource}:testIamPermissions", - "httpMethod": "POST", - "description": "Returns permissions that a caller has on the specified resource.", - "parameters": { - "resource": { - "type": "string", - "description": "REQUIRED: The resource for which the policy detail is being requested. `resource` is usually specified as a path, such as `projects/*project*/zones/*zone*/disks/*disk*`. The format for the path specified in this value is resource specific and is specified in the `testIamPermissions` documentation.", - "required": true, - "pattern": "^projects/[^/]*/jobs/[^/]*$", - "location": "path" - } - }, - "parameterOrder": [ - "resource" - ], - "request": { - "$ref": "TestIamPermissionsRequest" - }, - "response": { - "$ref": "TestIamPermissionsResponse" - }, - "scopes": [ - "https://www.googleapis.com/auth/cloud-platform" - ] } } } diff --git a/etc/api/datastore/v1/datastore-api.json b/etc/api/datastore/v1/datastore-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/datastore/v1beta1/datastore-api.json b/etc/api/datastore/v1beta1/datastore-api.json index 9692a8f28c..fcf1bc6559 100644 --- a/etc/api/datastore/v1beta1/datastore-api.json +++ b/etc/api/datastore/v1beta1/datastore-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/dy6n0rfohZWlTzhdDX3ZUa-EJxE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/dy6n0rfohZWlTzhdDX3ZUa-EJxE\"", "discoveryVersion": "v1", "id": "datastore:v1beta1", "name": "datastore", diff --git a/etc/api/datastore/v1beta2/datastore-api.json b/etc/api/datastore/v1beta2/datastore-api.json index c8b2ef8441..2f5a14e5c2 100644 --- a/etc/api/datastore/v1beta2/datastore-api.json +++ b/etc/api/datastore/v1beta2/datastore-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/xlRfXybj491s9T9Q90yjlG-attA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/xlRfXybj491s9T9Q90yjlG-attA\"", "discoveryVersion": "v1", "id": "datastore:v1beta2", "name": "datastore", diff --git a/etc/api/deploymentmanager/v2/deploymentmanager-api.json b/etc/api/deploymentmanager/v2/deploymentmanager-api.json index ac9e0ad3fd..ac78d80d3f 100644 --- a/etc/api/deploymentmanager/v2/deploymentmanager-api.json +++ b/etc/api/deploymentmanager/v2/deploymentmanager-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/NGZc-wpPOb0oBihA_KbpUbW4F-M\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/K_qiwyhd6rj_g1mYQfSWowdML68\"", "discoveryVersion": "v1", "id": "deploymentmanager:v2", "name": "deploymentmanager", "canonicalName": "Deployment Manager", "version": "v2", - "revision": "20160406", + "revision": "20160901", "title": "Google Cloud Deployment Manager API", "description": "Declares, configures, and deploys complex solutions on Google Cloud Platform.", "ownerDomain": "google.com", @@ -424,7 +424,7 @@ }, "targetLink": { "type": "string", - "description": "[Output Only] The URL of the resource that the operation modifies." + "description": "[Output Only] The URL of the resource that the operation modifies. If creating a persistent disk snapshot, this points to the persistent disk that the snapshot was created from." }, "user": { "type": "string", @@ -520,7 +520,7 @@ }, "type": { "type": "string", - "description": "[Output Only] The type of the resource, for example compute.v1.instance, or replicaPools.v1beta2.instanceGroupManager." + "description": "[Output Only] The type of the resource, for example compute.v1.instance, or cloudfunctions.v1beta1.function." }, "update": { "$ref": "ResourceUpdate", @@ -712,6 +712,10 @@ "type": "string", "description": "Name of the type." }, + "operation": { + "$ref": "Operation", + "description": "[Output Only] The Operation that most recently ran, or is currently running, on this type." + }, "selfLink": { "type": "string", "description": "[Output Only] Self link for the type." @@ -885,7 +889,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: When filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -1161,7 +1165,7 @@ }, "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: When filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -1246,7 +1250,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: When filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -1345,7 +1349,7 @@ }, "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: When filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { @@ -1396,7 +1400,7 @@ "parameters": { "filter": { "type": "string", - "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nCompute Engine Beta API Only: When filtering in the Beta API, you can also filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nThe Beta API also supports filtering on multiple expressions by providing each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", + "description": "Sets a filter expression for filtering listed resources, in the form filter={expression}. Your {expression} must be in the format: field_name comparison_string literal_string.\n\nThe field_name is the name of the field you want to compare. Only atomic field types are supported (string, number, boolean). The comparison_string must be either eq (equals) or ne (not equals). The literal_string is the string value to filter to. The literal value must be valid for the type of field you are filtering by (string, number, boolean). For string fields, the literal value is interpreted as a regular expression using RE2 syntax. The literal value must match the entire field.\n\nFor example, to filter for instances that do not have a name of example-instance, you would use filter=name ne example-instance.\n\nYou can filter on nested fields. For example, you could filter on instances that have set the scheduling.automaticRestart field to true. Use filtering on nested fields to take advantage of labels to organize and search for results based on label values.\n\nTo filter on multiple expressions, provide each separate expression within parentheses. For example, (scheduling.automaticRestart eq true) (zone eq us-central1-f). Multiple expressions are treated as AND expressions, meaning that resources must match all expressions to pass the filters.", "location": "query" }, "maxResults": { diff --git a/etc/api/dfareporting/v2.2/dfareporting-api.json b/etc/api/dfareporting/v2.2/dfareporting-api.json index 4b363981ec..26f35a64bf 100644 --- a/etc/api/dfareporting/v2.2/dfareporting-api.json +++ b/etc/api/dfareporting/v2.2/dfareporting-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/gVPQK4zBltgLF-WP2KuWChXt6qc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/KW75znc8lX5BhRl351_4B3M8uMo\"", "discoveryVersion": "v1", "id": "dfareporting:v2.2", "name": "dfareporting", "version": "v2.2", - "revision": "20160323", + "revision": "20160803", "title": "DCM/DFA Reporting And Trafficking API", "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", "ownerDomain": "google.com", @@ -116,6 +116,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -123,6 +124,7 @@ "", "", "", + "", "" ] }, @@ -222,6 +224,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -229,6 +232,7 @@ "", "", "", + "", "" ] }, @@ -599,7 +603,7 @@ }, "createInfo": { "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad.This is a read-only field." + "description": "Information about the creation of this ad. This is a read-only field." }, "creativeGroupAssignments": { "type": "array", @@ -614,7 +618,7 @@ }, "dayPartTargeting": { "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "defaultClickThroughEventTagProperties": { "$ref": "DefaultClickThroughEventTagProperties", @@ -642,7 +646,7 @@ }, "geoTargeting": { "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad.Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "id": { "type": "string", @@ -655,7 +659,7 @@ }, "keyValueTargetingExpression": { "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "kind": { "type": "string", @@ -679,7 +683,7 @@ }, "remarketingListExpression": { "$ref": "ListTargetingExpression", - "description": "Applicable when type is AD_SERVING_STANDARD_AD. Remarketing list targeting expression for this ad." + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "size": { "$ref": "Size", @@ -705,7 +709,7 @@ }, "technologyTargeting": { "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "type": { "type": "string", @@ -1438,7 +1442,7 @@ "properties": { "eventName": { "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_BANNER, ENHANCED_IMAGE, and HTML5_BANNER creatives." + "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_IMAGE, and HTML5_BANNER creatives. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE" }, "name": { "type": "string", @@ -1750,11 +1754,11 @@ }, "backupImageClickThroughUrl": { "type": "string", - "description": "Click-through URL for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageFeatures": { "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: ENHANCED_BANNER and HTML5_BANNER.", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "type": "string", "enum": [ @@ -1897,15 +1901,15 @@ }, "backupImageReportingLabel": { "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: ENHANCED_BANNER." + "description": "Reporting label used for HTML5 banner backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageTargetWindow": { "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "clickTags": { "type": "array", - "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER.", + "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "items": { "$ref": "ClickTag" } @@ -1945,7 +1949,7 @@ }, "convertFlashToHtml5": { "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative types: ENHANCED_BANNER and FLASH_INPAGE." + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "counterCustomEvents": { "type": "array", @@ -1977,7 +1981,7 @@ }, "exitCustomEvents": { "type": "array", - "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2044,12 +2048,12 @@ }, "requiredFlashVersion": { "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "size": { "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, and for ENHANCED_BANNER creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." }, "skippable": { "type": "boolean", @@ -2085,11 +2089,11 @@ }, "thirdPartyBackupImageImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyRichMediaImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyUrls": { "type": "array", @@ -2100,7 +2104,7 @@ }, "timerCustomEvents": { "type": "array", - "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2189,7 +2193,7 @@ "properties": { "actionScript3": { "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE and ENHANCED_BANNER." + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "active": { "type": "boolean", @@ -2412,6 +2416,7 @@ "type": "string", "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", "ASSET_DISPLAY_TYPE_EXPANDING", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", @@ -2431,6 +2436,7 @@ "", "", "", + "", "" ] }, @@ -2464,7 +2470,7 @@ }, "flashVersion": { "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "hideFlashObjects": { @@ -2543,7 +2549,7 @@ }, "role": { "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", "enum": [ "ADDITIONAL_FLASH", "ADDITIONAL_IMAGE", @@ -2567,7 +2573,7 @@ }, "size": { "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "sslCompliant": { "type": "boolean", @@ -2826,7 +2832,7 @@ }, "warnedValidationRules": { "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_INVALID\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"MRAID_REFERENCED\"\n- \"ADMOB_REFERENCED\"\n- \"FILE_TYPE_INVALID\"\n- \"ZIP_INVALID\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"NOT_SSL_COMPLIANT\"\n- \"FILE_DETAIL_EMPTY\"\n- \"ASSET_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"HTML5_FEATURE_UNSUPPORTED' \"", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", "items": { "type": "string", "enum": [ @@ -4579,6 +4585,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -4590,15 +4597,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -6743,6 +6909,7 @@ "PLANNING_PLACEMENT_PRICING_TYPE_CPA", "PLANNING_PLACEMENT_PRICING_TYPE_CPC", "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" @@ -6754,6 +6921,7 @@ "", "", "", + "", "" ] }, @@ -6815,6 +6983,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -6823,6 +6992,7 @@ "", "", "", + "", "" ] }, @@ -8522,14 +8692,14 @@ "properties": { "browsers": { "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "Browser" } }, "connectionTypes": { "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "ConnectionType" } @@ -8663,6 +8833,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -8674,15 +8845,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -10877,6 +11207,7 @@ "OBJECT_SD_SITE", "OBJECT_SIZE", "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", "OBJECT_USER_PROFILE", "OBJECT_USER_PROFILE_FILTER", "OBJECT_USER_ROLE" @@ -10918,6 +11249,7 @@ "", "", "", + "", "" ], "location": "query" @@ -14858,6 +15190,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -14866,6 +15199,7 @@ "", "", "", + "", "" ], "repeated": true, @@ -15493,6 +15827,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -15501,6 +15836,7 @@ "", "", "", + "", "" ], "repeated": true, diff --git a/etc/api/dfareporting/v2.3/dfareporting-api.json b/etc/api/dfareporting/v2.3/dfareporting-api.json index 295733366c..11aaea8fb5 100644 --- a/etc/api/dfareporting/v2.3/dfareporting-api.json +++ b/etc/api/dfareporting/v2.3/dfareporting-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/lyO5b9sA89-R9bZya3S2kXUDEmE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/earHejg0RJ0FfMMYqH42qJC8MlQ\"", "discoveryVersion": "v1", "id": "dfareporting:v2.3", "name": "dfareporting", "version": "v2.3", - "revision": "20160323", + "revision": "20160803", "title": "DCM/DFA Reporting And Trafficking API", "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", "ownerDomain": "google.com", @@ -116,6 +116,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -123,6 +124,7 @@ "", "", "", + "", "" ] }, @@ -222,6 +224,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -229,6 +232,7 @@ "", "", "", + "", "" ] }, @@ -599,7 +603,7 @@ }, "createInfo": { "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad.This is a read-only field." + "description": "Information about the creation of this ad. This is a read-only field." }, "creativeGroupAssignments": { "type": "array", @@ -614,7 +618,7 @@ }, "dayPartTargeting": { "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "defaultClickThroughEventTagProperties": { "$ref": "DefaultClickThroughEventTagProperties", @@ -642,7 +646,7 @@ }, "geoTargeting": { "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad.Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "id": { "type": "string", @@ -655,7 +659,7 @@ }, "keyValueTargetingExpression": { "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "kind": { "type": "string", @@ -679,7 +683,7 @@ }, "remarketingListExpression": { "$ref": "ListTargetingExpression", - "description": "Applicable when type is AD_SERVING_STANDARD_AD. Remarketing list targeting expression for this ad." + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "size": { "$ref": "Size", @@ -705,7 +709,7 @@ }, "technologyTargeting": { "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "type": { "type": "string", @@ -1438,7 +1442,7 @@ "properties": { "eventName": { "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_BANNER, ENHANCED_IMAGE, and HTML5_BANNER creatives." + "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_IMAGE, and HTML5_BANNER creatives. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE" }, "name": { "type": "string", @@ -1764,11 +1768,11 @@ }, "backupImageClickThroughUrl": { "type": "string", - "description": "Click-through URL for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageFeatures": { "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: ENHANCED_BANNER and HTML5_BANNER.", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "type": "string", "enum": [ @@ -1911,15 +1915,15 @@ }, "backupImageReportingLabel": { "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: ENHANCED_BANNER." + "description": "Reporting label used for HTML5 banner backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageTargetWindow": { "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "clickTags": { "type": "array", - "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER.", + "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "items": { "$ref": "ClickTag" } @@ -1959,7 +1963,7 @@ }, "convertFlashToHtml5": { "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative types: ENHANCED_BANNER and FLASH_INPAGE." + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "counterCustomEvents": { "type": "array", @@ -1991,7 +1995,7 @@ }, "exitCustomEvents": { "type": "array", - "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2058,12 +2062,12 @@ }, "requiredFlashVersion": { "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "size": { "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, and for ENHANCED_BANNER creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." }, "skippable": { "type": "boolean", @@ -2099,11 +2103,11 @@ }, "thirdPartyBackupImageImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyRichMediaImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyUrls": { "type": "array", @@ -2114,7 +2118,7 @@ }, "timerCustomEvents": { "type": "array", - "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2203,7 +2207,7 @@ "properties": { "actionScript3": { "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE and ENHANCED_BANNER." + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "active": { "type": "boolean", @@ -2426,6 +2430,7 @@ "type": "string", "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", "ASSET_DISPLAY_TYPE_EXPANDING", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", @@ -2445,6 +2450,7 @@ "", "", "", + "", "" ] }, @@ -2478,7 +2484,7 @@ }, "flashVersion": { "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "hideFlashObjects": { @@ -2557,7 +2563,7 @@ }, "role": { "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", "enum": [ "ADDITIONAL_FLASH", "ADDITIONAL_IMAGE", @@ -2581,7 +2587,7 @@ }, "size": { "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "sslCompliant": { "type": "boolean", @@ -2840,7 +2846,7 @@ }, "warnedValidationRules": { "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_INVALID\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"MRAID_REFERENCED\"\n- \"ADMOB_REFERENCED\"\n- \"FILE_TYPE_INVALID\"\n- \"ZIP_INVALID\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"NOT_SSL_COMPLIANT\"\n- \"FILE_DETAIL_EMPTY\"\n- \"ASSET_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"HTML5_FEATURE_UNSUPPORTED' \"", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", "items": { "type": "string", "enum": [ @@ -4598,6 +4604,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -4609,15 +4616,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -6758,6 +6924,7 @@ "PLANNING_PLACEMENT_PRICING_TYPE_CPA", "PLANNING_PLACEMENT_PRICING_TYPE_CPC", "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" @@ -6769,6 +6936,7 @@ "", "", "", + "", "" ] }, @@ -6830,6 +6998,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -6838,6 +7007,7 @@ "", "", "", + "", "" ] }, @@ -8541,14 +8711,14 @@ "properties": { "browsers": { "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "Browser" } }, "connectionTypes": { "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "ConnectionType" } @@ -8682,6 +8852,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -8693,15 +8864,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -10896,6 +11226,7 @@ "OBJECT_SD_SITE", "OBJECT_SIZE", "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", "OBJECT_USER_PROFILE", "OBJECT_USER_PROFILE_FILTER", "OBJECT_USER_ROLE" @@ -10937,6 +11268,7 @@ "", "", "", + "", "" ], "location": "query" @@ -14848,6 +15180,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -14856,6 +15189,7 @@ "", "", "", + "", "" ], "repeated": true, @@ -15483,6 +15817,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -15491,6 +15826,7 @@ "", "", "", + "", "" ], "repeated": true, diff --git a/etc/api/dfareporting/v2.4/dfareporting-api.json b/etc/api/dfareporting/v2.4/dfareporting-api.json index 3e3d63e19b..5a4d02a513 100644 --- a/etc/api/dfareporting/v2.4/dfareporting-api.json +++ b/etc/api/dfareporting/v2.4/dfareporting-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/GMvPIbteso6VJ5xPWVBu0dudXSU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/pT3Ka6grgRE-kTRgQt4sb6D2IzA\"", "discoveryVersion": "v1", "id": "dfareporting:v2.4", "name": "dfareporting", "version": "v2.4", - "revision": "20160323", + "revision": "20160803", "title": "DCM/DFA Reporting And Trafficking API", "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", "ownerDomain": "google.com", @@ -116,6 +116,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -123,6 +124,7 @@ "", "", "", + "", "" ] }, @@ -222,6 +224,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -229,6 +232,7 @@ "", "", "", + "", "" ] }, @@ -581,7 +585,7 @@ }, "compatibility": { "type": "string", - "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", "enum": [ "APP", "APP_INTERSTITIAL", @@ -599,7 +603,7 @@ }, "createInfo": { "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad.This is a read-only field." + "description": "Information about the creation of this ad. This is a read-only field." }, "creativeGroupAssignments": { "type": "array", @@ -614,7 +618,7 @@ }, "dayPartTargeting": { "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "defaultClickThroughEventTagProperties": { "$ref": "DefaultClickThroughEventTagProperties", @@ -642,7 +646,7 @@ }, "geoTargeting": { "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad.Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "id": { "type": "string", @@ -655,7 +659,7 @@ }, "keyValueTargetingExpression": { "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "kind": { "type": "string", @@ -679,7 +683,7 @@ }, "remarketingListExpression": { "$ref": "ListTargetingExpression", - "description": "Applicable when type is AD_SERVING_STANDARD_AD. Remarketing list targeting expression for this ad." + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "size": { "$ref": "Size", @@ -705,7 +709,7 @@ }, "technologyTargeting": { "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "type": { "type": "string", @@ -1438,7 +1442,7 @@ "properties": { "eventName": { "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_BANNER, ENHANCED_IMAGE, and HTML5_BANNER creatives." + "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_IMAGE, and HTML5_BANNER creatives. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE" }, "name": { "type": "string", @@ -1764,11 +1768,11 @@ }, "backupImageClickThroughUrl": { "type": "string", - "description": "Click-through URL for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageFeatures": { "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: ENHANCED_BANNER and HTML5_BANNER.", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "type": "string", "enum": [ @@ -1911,15 +1915,15 @@ }, "backupImageReportingLabel": { "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: ENHANCED_BANNER." + "description": "Reporting label used for HTML5 banner backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageTargetWindow": { "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "clickTags": { "type": "array", - "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER.", + "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "items": { "$ref": "ClickTag" } @@ -1938,7 +1942,7 @@ }, "compatibility": { "type": "array", - "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", "items": { "type": "string", "enum": [ @@ -1959,7 +1963,7 @@ }, "convertFlashToHtml5": { "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative types: ENHANCED_BANNER and FLASH_INPAGE." + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "counterCustomEvents": { "type": "array", @@ -1991,7 +1995,7 @@ }, "exitCustomEvents": { "type": "array", - "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2058,12 +2062,12 @@ }, "requiredFlashVersion": { "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "size": { "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, and for ENHANCED_BANNER creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." }, "skippable": { "type": "boolean", @@ -2099,11 +2103,11 @@ }, "thirdPartyBackupImageImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyRichMediaImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyUrls": { "type": "array", @@ -2114,7 +2118,7 @@ }, "timerCustomEvents": { "type": "array", - "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2203,7 +2207,7 @@ "properties": { "actionScript3": { "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE and ENHANCED_BANNER." + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "active": { "type": "boolean", @@ -2426,6 +2430,7 @@ "type": "string", "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", "ASSET_DISPLAY_TYPE_EXPANDING", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", @@ -2445,6 +2450,7 @@ "", "", "", + "", "" ] }, @@ -2478,7 +2484,7 @@ }, "flashVersion": { "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "hideFlashObjects": { @@ -2557,7 +2563,7 @@ }, "role": { "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", "enum": [ "ADDITIONAL_FLASH", "ADDITIONAL_IMAGE", @@ -2581,7 +2587,7 @@ }, "size": { "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "sslCompliant": { "type": "boolean", @@ -2840,7 +2846,7 @@ }, "warnedValidationRules": { "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_INVALID\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"MRAID_REFERENCED\"\n- \"ADMOB_REFERENCED\"\n- \"FILE_TYPE_INVALID\"\n- \"ZIP_INVALID\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"NOT_SSL_COMPLIANT\"\n- \"FILE_DETAIL_EMPTY\"\n- \"ASSET_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"HTML5_FEATURE_UNSUPPORTED' \"", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", "items": { "type": "string", "enum": [ @@ -4598,6 +4604,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -4609,15 +4616,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -6084,7 +6250,7 @@ }, "compatibility": { "type": "string", - "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", "enum": [ "APP", "APP_INTERSTITIAL", @@ -6770,6 +6936,7 @@ "PLANNING_PLACEMENT_PRICING_TYPE_CPA", "PLANNING_PLACEMENT_PRICING_TYPE_CPC", "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" @@ -6781,6 +6948,7 @@ "", "", "", + "", "" ] }, @@ -6842,6 +7010,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -6850,6 +7019,7 @@ "", "", "", + "", "" ] }, @@ -8553,14 +8723,14 @@ "properties": { "browsers": { "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "Browser" } }, "connectionTypes": { "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "ConnectionType" } @@ -8694,6 +8864,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -8705,15 +8876,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -10908,6 +11238,7 @@ "OBJECT_SD_SITE", "OBJECT_SIZE", "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", "OBJECT_USER_PROFILE", "OBJECT_USER_PROFILE_FILTER", "OBJECT_USER_ROLE" @@ -10949,6 +11280,7 @@ "", "", "", + "", "" ], "location": "query" @@ -14873,6 +15205,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -14881,6 +15214,7 @@ "", "", "", + "", "" ], "repeated": true, @@ -15508,6 +15842,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -15516,6 +15851,7 @@ "", "", "", + "", "" ], "repeated": true, diff --git a/etc/api/dfareporting/v2.5/dfareporting-api.json b/etc/api/dfareporting/v2.5/dfareporting-api.json new file mode 100644 index 0000000000..50b16cfa9a --- /dev/null +++ b/etc/api/dfareporting/v2.5/dfareporting-api.json @@ -0,0 +1,18744 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/y2LzemS0ncSGPB8Wy8sQ08tzru8\"", + "discoveryVersion": "v1", + "id": "dfareporting:v2.5", + "name": "dfareporting", + "version": "v2.5", + "revision": "20160803", + "title": "DCM/DFA Reporting And Trafficking API", + "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" + }, + "documentationLink": "https://developers.google.com/doubleclick-advertisers/reporting/", + "protocol": "rest", + "baseUrl": "https://www.googleapis.com/dfareporting/v2.5/", + "basePath": "/dfareporting/v2.5/", + "rootUrl": "https://www.googleapis.com/", + "servicePath": "dfareporting/v2.5/", + "batchPath": "batch", + "parameters": { + "alt": { + "type": "string", + "description": "Data format for the response.", + "default": "json", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query" + }, + "userIp": { + "type": "string", + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/ddmconversions": { + "description": "Manage DoubleClick Digital Marketing conversions" + }, + "https://www.googleapis.com/auth/dfareporting": { + "description": "View and manage DoubleClick for Advertisers reports" + }, + "https://www.googleapis.com/auth/dfatrafficking": { + "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + } + } + } + }, + "schemas": { + "Account": { + "id": "Account", + "type": "object", + "description": "Contains properties of a DCM account.", + "properties": { + "accountPermissionIds": { + "type": "array", + "description": "Account permissions assigned to this account.", + "items": { + "type": "string", + "format": "int64" + } + }, + "accountProfile": { + "type": "string", + "description": "Profile for this account. This is a read-only field that can be left blank.", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "active": { + "type": "boolean", + "description": "Whether this account is active." + }, + "activeAdsLimitTier": { + "type": "string", + "description": "Maximum number of active ads allowed for this account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "activeViewOptOut": { + "type": "boolean", + "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions." + }, + "availablePermissionIds": { + "type": "array", + "description": "User role permissions available to the user roles of this account.", + "items": { + "type": "string", + "format": "int64" + } + }, + "comscoreVceEnabled": { + "type": "boolean", + "description": "Whether campaigns created in this account will be enabled for comScore vCE by default." + }, + "countryId": { + "type": "string", + "description": "ID of the country associated with this account.", + "format": "int64" + }, + "currencyId": { + "type": "string", + "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK", + "format": "int64" + }, + "defaultCreativeSizeId": { + "type": "string", + "description": "Default placement dimensions for this account.", + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of this account." + }, + "id": { + "type": "string", + "description": "ID of this account. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", + "default": "dfareporting#account" + }, + "locale": { + "type": "string", + "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" + }, + "maximumImageSize": { + "type": "string", + "description": "Maximum image size allowed for this account.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique." + }, + "nielsenOcrEnabled": { + "type": "boolean", + "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default." + }, + "reportsConfiguration": { + "$ref": "ReportsConfiguration", + "description": "Reporting configuration of this account." + }, + "teaserSizeLimit": { + "type": "string", + "description": "File size limit in kilobytes of Rich Media teaser creatives. Must be between 1 and 10240.", + "format": "int64" + } + } + }, + "AccountActiveAdSummary": { + "id": "AccountActiveAdSummary", + "type": "object", + "description": "Gets a summary of active ads in an account.", + "properties": { + "accountId": { + "type": "string", + "description": "ID of the account.", + "format": "int64" + }, + "activeAds": { + "type": "string", + "description": "Ads that have been activated for the account", + "format": "int64" + }, + "activeAdsLimitTier": { + "type": "string", + "description": "Maximum number of active ads allowed for the account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "availableAds": { + "type": "string", + "description": "Ads that can be activated for the account.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", + "default": "dfareporting#accountActiveAdSummary" + } + } + }, + "AccountPermission": { + "id": "AccountPermission", + "type": "object", + "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", + "properties": { + "accountProfiles": { + "type": "array", + "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", + "items": { + "type": "string", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + } + }, + "id": { + "type": "string", + "description": "ID of this account permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", + "default": "dfareporting#accountPermission" + }, + "level": { + "type": "string", + "description": "Administrative level required to enable this account permission.", + "enum": [ + "ADMINISTRATOR", + "USER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of this account permission." + }, + "permissionGroupId": { + "type": "string", + "description": "Permission group of this account permission.", + "format": "int64" + } + } + }, + "AccountPermissionGroup": { + "id": "AccountPermissionGroup", + "type": "object", + "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", + "properties": { + "id": { + "type": "string", + "description": "ID of this account permission group.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", + "default": "dfareporting#accountPermissionGroup" + }, + "name": { + "type": "string", + "description": "Name of this account permission group." + } + } + }, + "AccountPermissionGroupsListResponse": { + "id": "AccountPermissionGroupsListResponse", + "type": "object", + "description": "Account Permission Group List Response", + "properties": { + "accountPermissionGroups": { + "type": "array", + "description": "Account permission group collection.", + "items": { + "$ref": "AccountPermissionGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", + "default": "dfareporting#accountPermissionGroupsListResponse" + } + } + }, + "AccountPermissionsListResponse": { + "id": "AccountPermissionsListResponse", + "type": "object", + "description": "Account Permission List Response", + "properties": { + "accountPermissions": { + "type": "array", + "description": "Account permission collection.", + "items": { + "$ref": "AccountPermission" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", + "default": "dfareporting#accountPermissionsListResponse" + } + } + }, + "AccountUserProfile": { + "id": "AccountUserProfile", + "type": "object", + "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable." + }, + "advertiserFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which advertisers are visible to the user profile." + }, + "campaignFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which campaigns are visible to the user profile." + }, + "comments": { + "type": "string", + "description": "Comments for this user profile." + }, + "email": { + "type": "string", + "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion." + }, + "id": { + "type": "string", + "description": "ID of the user profile. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", + "default": "dfareporting#accountUserProfile" + }, + "locale": { + "type": "string", + "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" + }, + "name": { + "type": "string", + "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"&;\"#%,\"." + }, + "siteFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which sites are visible to the user profile." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64" + }, + "traffickerType": { + "type": "string", + "description": "Trafficker type of this user profile.", + "enum": [ + "EXTERNAL_TRAFFICKER", + "INTERNAL_NON_TRAFFICKER", + "INTERNAL_TRAFFICKER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "userAccessType": { + "type": "string", + "description": "User type of the user profile. This is a read-only field that can be left blank.", + "enum": [ + "INTERNAL_ADMINISTRATOR", + "NORMAL_USER", + "READ_ONLY_SUPER_USER", + "SUPER_USER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "userRoleFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which user roles are visible to the user profile." + }, + "userRoleId": { + "type": "string", + "description": "User role ID of the user profile. This is a required field.", + "format": "int64" + } + } + }, + "AccountUserProfilesListResponse": { + "id": "AccountUserProfilesListResponse", + "type": "object", + "description": "Account User Profile List Response", + "properties": { + "accountUserProfiles": { + "type": "array", + "description": "Account user profile collection.", + "items": { + "$ref": "AccountUserProfile" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", + "default": "dfareporting#accountUserProfilesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AccountsListResponse": { + "id": "AccountsListResponse", + "type": "object", + "description": "Account List Response", + "properties": { + "accounts": { + "type": "array", + "description": "Account collection.", + "items": { + "$ref": "Account" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", + "default": "dfareporting#accountsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "Activities": { + "id": "Activities", + "type": "object", + "description": "Represents an activity group.", + "properties": { + "filters": { + "type": "array", + "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#activities.", + "default": "dfareporting#activities" + }, + "metricNames": { + "type": "array", + "description": "List of names of floodlight activity metrics.", + "items": { + "type": "string" + } + } + } + }, + "Ad": { + "id": "Ad", + "type": "object", + "description": "Contains properties of a DCM ad.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this ad. This is a read-only field that can be left blank.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this ad is active." + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this ad. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this ad is archived." + }, + "audienceSegmentId": { + "type": "string", + "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64" + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this ad. This is a required field on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." + }, + "comments": { + "type": "string", + "description": "Comments for this ad." + }, + "compatibility": { + "type": "string", + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this ad. This is a read-only field." + }, + "creativeGroupAssignments": { + "type": "array", + "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + } + }, + "creativeRotation": { + "$ref": "CreativeRotation", + "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Default click-through event tag properties for this ad." + }, + "deliverySchedule": { + "$ref": "DeliverySchedule", + "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." + }, + "dynamicClickTracker": { + "type": "boolean", + "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert." + }, + "endTime": { + "type": "string", + "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", + "format": "date-time" + }, + "eventTagOverrides": { + "type": "array", + "description": "Event tag overrides for this ad.", + "items": { + "$ref": "EventTagOverride" + } + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "id": { + "type": "string", + "description": "ID of this ad. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", + "default": "dfareporting#ad" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this ad. This is a read-only field." + }, + "name": { + "type": "string", + "description": "Name of this ad. This is a required field and must be less than 256 characters long." + }, + "placementAssignments": { + "type": "array", + "description": "Placement assignments for this ad.", + "items": { + "$ref": "PlacementAssignment" + } + }, + "remarketingListExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "size": { + "$ref": "Size", + "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "startTime": { + "type": "string", + "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", + "format": "date-time" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", + "format": "int64" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "type": { + "type": "string", + "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "AdSlot": { + "id": "AdSlot", + "type": "object", + "description": "Ad Slot", + "properties": { + "comment": { + "type": "string", + "description": "Comment for this ad slot." + }, + "compatibility": { + "type": "string", + "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "height": { + "type": "string", + "description": "Height of this ad slot.", + "format": "int64" + }, + "linkedPlacementId": { + "type": "string", + "description": "ID of the placement from an external platform that is linked to this ad slot.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this ad slot." + }, + "paymentSourceType": { + "type": "string", + "description": "Payment source type of this ad slot.", + "enum": [ + "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", + "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "primary": { + "type": "boolean", + "description": "Primary ad slot of a roadblock inventory item." + }, + "width": { + "type": "string", + "description": "Width of this ad slot.", + "format": "int64" + } + } + }, + "AdsListResponse": { + "id": "AdsListResponse", + "type": "object", + "description": "Ad List Response", + "properties": { + "ads": { + "type": "array", + "description": "Ad collection.", + "items": { + "$ref": "Ad" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", + "default": "dfareporting#adsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "Advertiser": { + "id": "Advertiser", + "type": "object", + "description": "Contains properties of a DCM advertiser.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserGroupId": { + "type": "string", + "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", + "format": "int64" + }, + "clickThroughUrlSuffix": { + "type": "string", + "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long." + }, + "defaultClickThroughEventTagId": { + "type": "string", + "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", + "format": "int64" + }, + "defaultEmail": { + "type": "string", + "description": "Default email address used in sender field for tag emails." + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this advertiser. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", + "default": "dfareporting#advertiser" + }, + "name": { + "type": "string", + "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account." + }, + "originalFloodlightConfigurationId": { + "type": "string", + "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", + "format": "int64" + }, + "status": { + "type": "string", + "description": "Status of this advertiser.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64" + }, + "suspended": { + "type": "boolean", + "description": "Suspension status of this advertiser." + } + } + }, + "AdvertiserGroup": { + "id": "AdvertiserGroup", + "type": "object", + "description": "Groups advertisers together so that reports can be generated for the entire group at once.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this advertiser group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", + "default": "dfareporting#advertiserGroup" + }, + "name": { + "type": "string", + "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account." + } + } + }, + "AdvertiserGroupsListResponse": { + "id": "AdvertiserGroupsListResponse", + "type": "object", + "description": "Advertiser Group List Response", + "properties": { + "advertiserGroups": { + "type": "array", + "description": "Advertiser group collection.", + "items": { + "$ref": "AdvertiserGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", + "default": "dfareporting#advertiserGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AdvertisersListResponse": { + "id": "AdvertisersListResponse", + "type": "object", + "description": "Advertiser List Response", + "properties": { + "advertisers": { + "type": "array", + "description": "Advertiser collection.", + "items": { + "$ref": "Advertiser" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", + "default": "dfareporting#advertisersListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AudienceSegment": { + "id": "AudienceSegment", + "type": "object", + "description": "Audience Segment.", + "properties": { + "allocation": { + "type": "integer", + "description": "Weight allocated to this segment. Must be between 1 and 1000. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group.", + "format": "int32" + }, + "id": { + "type": "string", + "description": "ID of this audience segment. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this audience segment. This is a required field and must be less than 65 characters long." + } + } + }, + "AudienceSegmentGroup": { + "id": "AudienceSegmentGroup", + "type": "object", + "description": "Audience Segment Group.", + "properties": { + "audienceSegments": { + "type": "array", + "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", + "items": { + "$ref": "AudienceSegment" + } + }, + "id": { + "type": "string", + "description": "ID of this audience segment group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long." + } + } + }, + "Browser": { + "id": "Browser", + "type": "object", + "description": "Contains information about a browser that can be targeted by ads.", + "properties": { + "browserVersionId": { + "type": "string", + "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this browser. This is the ID used when generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", + "default": "dfareporting#browser" + }, + "majorVersion": { + "type": "string", + "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." + }, + "minorVersion": { + "type": "string", + "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." + }, + "name": { + "type": "string", + "description": "Name of this browser." + } + } + }, + "BrowsersListResponse": { + "id": "BrowsersListResponse", + "type": "object", + "description": "Browser List Response", + "properties": { + "browsers": { + "type": "array", + "description": "Browser collection.", + "items": { + "$ref": "Browser" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", + "default": "dfareporting#browsersListResponse" + } + } + }, + "Campaign": { + "id": "Campaign", + "type": "object", + "description": "Contains properties of a DCM campaign.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64" + }, + "additionalCreativeOptimizationConfigurations": { + "type": "array", + "description": "Additional creative optimization configurations for the campaign.", + "items": { + "$ref": "CreativeOptimizationConfiguration" + } + }, + "advertiserGroupId": { + "type": "string", + "description": "Advertiser group ID of the associated advertiser.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this campaign. This is a required field.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this campaign has been archived." + }, + "audienceSegmentGroups": { + "type": "array", + "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", + "items": { + "$ref": "AudienceSegmentGroup" + } + }, + "billingInvoiceCode": { + "type": "string", + "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix override properties for this campaign." + }, + "comment": { + "type": "string", + "description": "Arbitrary comments about this campaign. Must be less than 256 characters long." + }, + "comscoreVceEnabled": { + "type": "boolean", + "description": "Whether comScore vCE reports are enabled for this campaign." + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this campaign. This is a read-only field." + }, + "creativeGroupIds": { + "type": "array", + "description": "List of creative group IDs that are assigned to the campaign.", + "items": { + "type": "string", + "format": "int64" + } + }, + "creativeOptimizationConfiguration": { + "$ref": "CreativeOptimizationConfiguration", + "description": "Creative optimization configuration for the campaign." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Click-through event tag ID override properties for this campaign." + }, + "endDate": { + "type": "string", + "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", + "format": "date" + }, + "eventTagOverrides": { + "type": "array", + "description": "Overrides that can be used to activate or deactivate advertiser event tags.", + "items": { + "$ref": "EventTagOverride" + } + }, + "externalId": { + "type": "string", + "description": "External ID for this campaign." + }, + "id": { + "type": "string", + "description": "ID of this campaign. This is a read-only auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", + "default": "dfareporting#campaign" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this campaign. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for the campaign." + }, + "name": { + "type": "string", + "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser." + }, + "nielsenOcrEnabled": { + "type": "boolean", + "description": "Whether Nielsen reports are enabled for this campaign." + }, + "startDate": { + "type": "string", + "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", + "format": "date" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64" + }, + "traffickerEmails": { + "type": "array", + "description": "Campaign trafficker contact emails.", + "items": { + "type": "string" + } + } + } + }, + "CampaignCreativeAssociation": { + "id": "CampaignCreativeAssociation", + "type": "object", + "description": "Identifies a creative which has been associated with a given campaign.", + "properties": { + "creativeId": { + "type": "string", + "description": "ID of the creative associated with the campaign. This is a required field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", + "default": "dfareporting#campaignCreativeAssociation" + } + } + }, + "CampaignCreativeAssociationsListResponse": { + "id": "CampaignCreativeAssociationsListResponse", + "type": "object", + "description": "Campaign Creative Association List Response", + "properties": { + "campaignCreativeAssociations": { + "type": "array", + "description": "Campaign creative association collection", + "items": { + "$ref": "CampaignCreativeAssociation" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", + "default": "dfareporting#campaignCreativeAssociationsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CampaignsListResponse": { + "id": "CampaignsListResponse", + "type": "object", + "description": "Campaign List Response", + "properties": { + "campaigns": { + "type": "array", + "description": "Campaign collection.", + "items": { + "$ref": "Campaign" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", + "default": "dfareporting#campaignsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "ChangeLog": { + "id": "ChangeLog", + "type": "object", + "description": "Describes a change that a user has made to a resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of the modified object.", + "format": "int64" + }, + "action": { + "type": "string", + "description": "Action which caused the change." + }, + "changeTime": { + "type": "string", + "description": "Time when the object was modified.", + "format": "date-time" + }, + "fieldName": { + "type": "string", + "description": "Field name of the object which changed." + }, + "id": { + "type": "string", + "description": "ID of this change log.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", + "default": "dfareporting#changeLog" + }, + "newValue": { + "type": "string", + "description": "New value of the object field." + }, + "objectId": { + "type": "string", + "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", + "format": "int64" + }, + "objectType": { + "type": "string", + "description": "Object type of the change log." + }, + "oldValue": { + "type": "string", + "description": "Old value of the object field." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of the modified object.", + "format": "int64" + }, + "transactionId": { + "type": "string", + "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", + "format": "int64" + }, + "userProfileId": { + "type": "string", + "description": "ID of the user who modified the object.", + "format": "int64" + }, + "userProfileName": { + "type": "string", + "description": "User profile name of the user who modified the object." + } + } + }, + "ChangeLogsListResponse": { + "id": "ChangeLogsListResponse", + "type": "object", + "description": "Change Log List Response", + "properties": { + "changeLogs": { + "type": "array", + "description": "Change log collection.", + "items": { + "$ref": "ChangeLog" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", + "default": "dfareporting#changeLogsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CitiesListResponse": { + "id": "CitiesListResponse", + "type": "object", + "description": "City List Response", + "properties": { + "cities": { + "type": "array", + "description": "City collection.", + "items": { + "$ref": "City" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", + "default": "dfareporting#citiesListResponse" + } + } + }, + "City": { + "id": "City", + "type": "object", + "description": "Contains information about a city that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this city belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this city belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this city. This is the ID used for targeting and generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", + "default": "dfareporting#city" + }, + "metroCode": { + "type": "string", + "description": "Metro region code of the metro region (DMA) to which this city belongs." + }, + "metroDmaId": { + "type": "string", + "description": "ID of the metro region (DMA) to which this city belongs.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this city." + }, + "regionCode": { + "type": "string", + "description": "Region code of the region to which this city belongs." + }, + "regionDartId": { + "type": "string", + "description": "DART ID of the region to which this city belongs.", + "format": "int64" + } + } + }, + "ClickTag": { + "id": "ClickTag", + "type": "object", + "description": "Creative Click Tag.", + "properties": { + "eventName": { + "type": "string", + "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "name": { + "type": "string", + "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field." + }, + "value": { + "type": "string", + "description": "Parameter value for the specified click tag. This field contains a click-through url." + } + } + }, + "ClickThroughUrl": { + "id": "ClickThroughUrl", + "type": "object", + "description": "Click-through URL", + "properties": { + "computedClickThroughUrl": { + "type": "string", + "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field." + }, + "customClickThroughUrl": { + "type": "string", + "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset." + }, + "defaultLandingPage": { + "type": "boolean", + "description": "Whether the campaign default landing page is used." + }, + "landingPageId": { + "type": "string", + "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", + "format": "int64" + } + } + }, + "ClickThroughUrlSuffixProperties": { + "id": "ClickThroughUrlSuffixProperties", + "type": "object", + "description": "Click Through URL Suffix settings.", + "properties": { + "clickThroughUrlSuffix": { + "type": "string", + "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long." + }, + "overrideInheritedSuffix": { + "type": "boolean", + "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value." + } + } + }, + "CompanionClickThroughOverride": { + "id": "CompanionClickThroughOverride", + "type": "object", + "description": "Companion Click-through override.", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this companion click-through override." + }, + "creativeId": { + "type": "string", + "description": "ID of the creative for this companion click-through override.", + "format": "int64" + } + } + }, + "CompatibleFields": { + "id": "CompatibleFields", + "type": "object", + "description": "Represents a response to the queryCompatibleFields method.", + "properties": { + "crossDimensionReachReportCompatibleFields": { + "$ref": "CrossDimensionReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." + }, + "floodlightReportCompatibleFields": { + "$ref": "FloodlightReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", + "default": "dfareporting#compatibleFields" + }, + "pathToConversionReportCompatibleFields": { + "$ref": "PathToConversionReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." + }, + "reachReportCompatibleFields": { + "$ref": "ReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." + }, + "reportCompatibleFields": { + "$ref": "ReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." + } + } + }, + "ConnectionType": { + "id": "ConnectionType", + "type": "object", + "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", + "properties": { + "id": { + "type": "string", + "description": "ID of this connection type.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", + "default": "dfareporting#connectionType" + }, + "name": { + "type": "string", + "description": "Name of this connection type." + } + } + }, + "ConnectionTypesListResponse": { + "id": "ConnectionTypesListResponse", + "type": "object", + "description": "Connection Type List Response", + "properties": { + "connectionTypes": { + "type": "array", + "description": "Collection of connection types such as broadband and mobile.", + "items": { + "$ref": "ConnectionType" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", + "default": "dfareporting#connectionTypesListResponse" + } + } + }, + "ContentCategoriesListResponse": { + "id": "ContentCategoriesListResponse", + "type": "object", + "description": "Content Category List Response", + "properties": { + "contentCategories": { + "type": "array", + "description": "Content category collection.", + "items": { + "$ref": "ContentCategory" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", + "default": "dfareporting#contentCategoriesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "ContentCategory": { + "id": "ContentCategory", + "type": "object", + "description": "Organizes placements according to the contents of their associated webpages.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this content category. This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this content category. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", + "default": "dfareporting#contentCategory" + }, + "name": { + "type": "string", + "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account." + } + } + }, + "Conversion": { + "id": "Conversion", + "type": "object", + "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", + "properties": { + "childDirectedTreatment": { + "type": "boolean", + "description": "Whether the conversion was directed toward children." + }, + "customVariables": { + "type": "array", + "description": "Custom floodlight variables.", + "items": { + "$ref": "CustomFloodlightVariable" + } + }, + "encryptedUserId": { + "type": "string", + "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserIdCandidates[] or mobileDeviceId is a required field." + }, + "floodlightActivityId": { + "type": "string", + "description": "Floodlight Activity ID of this conversion. This is a required field.", + "format": "int64" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight Configuration ID of this conversion. This is a required field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", + "default": "dfareporting#conversion" + }, + "limitAdTracking": { + "type": "boolean", + "description": "Whether the user has Limit Ad Tracking set." + }, + "mobileDeviceId": { + "type": "string", + "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId and encryptedUserIdCandidates[]. This or encryptedUserId or encryptedUserIdCandidates[] is a required field." + }, + "ordinal": { + "type": "string", + "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field." + }, + "quantity": { + "type": "string", + "description": "The quantity of the conversion.", + "format": "int64" + }, + "timestampMicros": { + "type": "string", + "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", + "format": "int64" + }, + "value": { + "type": "number", + "description": "The value of the conversion.", + "format": "double" + } + } + }, + "ConversionError": { + "id": "ConversionError", + "type": "object", + "description": "The error code and description for a conversion that failed to insert or update.", + "properties": { + "code": { + "type": "string", + "description": "The error code.", + "enum": [ + "INTERNAL", + "INVALID_ARGUMENT", + "NOT_FOUND", + "PERMISSION_DENIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", + "default": "dfareporting#conversionError" + }, + "message": { + "type": "string", + "description": "A description of the error." + } + } + }, + "ConversionStatus": { + "id": "ConversionStatus", + "type": "object", + "description": "The original conversion that was inserted or updated and whether there were any errors.", + "properties": { + "conversion": { + "$ref": "Conversion", + "description": "The original conversion that was inserted or updated." + }, + "errors": { + "type": "array", + "description": "A list of errors related to this conversion.", + "items": { + "$ref": "ConversionError" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", + "default": "dfareporting#conversionStatus" + } + } + }, + "ConversionsBatchInsertRequest": { + "id": "ConversionsBatchInsertRequest", + "type": "object", + "description": "Insert Conversions Request.", + "properties": { + "conversions": { + "type": "array", + "description": "The set of conversions to insert.", + "items": { + "$ref": "Conversion" + } + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId is encrypted. This is a required field if encryptedUserId is used." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", + "default": "dfareporting#conversionsBatchInsertRequest" + } + } + }, + "ConversionsBatchInsertResponse": { + "id": "ConversionsBatchInsertResponse", + "type": "object", + "description": "Insert Conversions Response.", + "properties": { + "hasFailures": { + "type": "boolean", + "description": "Indicates that some or all conversions failed to insert." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", + "default": "dfareporting#conversionsBatchInsertResponse" + }, + "status": { + "type": "array", + "description": "The status of each conversion's insertion status. The status is returned in the same order that conversions are inserted.", + "items": { + "$ref": "ConversionStatus" + } + } + } + }, + "CountriesListResponse": { + "id": "CountriesListResponse", + "type": "object", + "description": "Country List Response", + "properties": { + "countries": { + "type": "array", + "description": "Country collection.", + "items": { + "$ref": "Country" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", + "default": "dfareporting#countriesListResponse" + } + } + }, + "Country": { + "id": "Country", + "type": "object", + "description": "Contains information about a country that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code." + }, + "dartId": { + "type": "string", + "description": "DART ID of this country. This is the ID used for targeting and generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", + "default": "dfareporting#country" + }, + "name": { + "type": "string", + "description": "Name of this country." + }, + "sslEnabled": { + "type": "boolean", + "description": "Whether ad serving supports secure servers in this country." + } + } + }, + "Creative": { + "id": "Creative", + "type": "object", + "description": "Contains properties of a Creative.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether the creative is active. Applicable to all creative types." + }, + "adParameters": { + "type": "string", + "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID." + }, + "adTagKeys": { + "type": "array", + "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + } + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", + "format": "int64" + }, + "allowScriptAccess": { + "type": "boolean", + "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE." + }, + "archived": { + "type": "boolean", + "description": "Whether the creative is archived. Applicable to all creative types." + }, + "artworkType": { + "type": "string", + "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "authoringSource": { + "type": "string", + "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", + "enum": [ + "CREATIVE_AUTHORING_SOURCE_DBM", + "CREATIVE_AUTHORING_SOURCE_DCM", + "CREATIVE_AUTHORING_SOURCE_STUDIO" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "authoringTool": { + "type": "string", + "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "enum": [ + "NINJA", + "SWIFFY" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "auto_advance_images": { + "type": "boolean", + "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY." + }, + "backgroundColor": { + "type": "string", + "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE." + }, + "backupImageClickThroughUrl": { + "type": "string", + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "backupImageFeatures": { + "type": "array", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "backupImageReportingLabel": { + "type": "string", + "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "backupImageTargetWindow": { + "$ref": "TargetWindow", + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "clickTags": { + "type": "array", + "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "ClickTag" + } + }, + "commercialId": { + "type": "string", + "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "companionCreatives": { + "type": "array", + "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "items": { + "type": "string", + "format": "int64" + } + }, + "compatibility": { + "type": "array", + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "items": { + "type": "string", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + }, + "convertFlashToHtml5": { + "type": "boolean", + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "counterCustomEvents": { + "type": "array", + "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "creativeAssets": { + "type": "array", + "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", + "items": { + "$ref": "CreativeAsset" + } + }, + "creativeFieldAssignments": { + "type": "array", + "description": "Creative field assignments for this creative. Applicable to all creative types.", + "items": { + "$ref": "CreativeFieldAssignment" + } + }, + "customKeyValues": { + "type": "array", + "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + } + }, + "exitCustomEvents": { + "type": "array", + "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "fsCommand": { + "$ref": "FsCommand", + "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." + }, + "htmlCode": { + "type": "string", + "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is false. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA." + }, + "htmlCodeLocked": { + "type": "boolean", + "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER." + }, + "id": { + "type": "string", + "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", + "default": "dfareporting#creative" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." + }, + "latestTraffickedCreativeId": { + "type": "string", + "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types." + }, + "overrideCss": { + "type": "string", + "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA." + }, + "redirectUrl": { + "type": "string", + "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT" + }, + "renderingId": { + "type": "string", + "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", + "format": "int64" + }, + "renderingIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "requiredFlashPluginVersion": { + "type": "string", + "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID." + }, + "requiredFlashVersion": { + "type": "integer", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + }, + "skippable": { + "type": "boolean", + "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types." + }, + "sslOverride": { + "type": "boolean", + "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types." + }, + "studioAdvertiserId": { + "type": "string", + "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "studioCreativeId": { + "type": "string", + "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "studioTraffickedCreativeId": { + "type": "string", + "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64" + }, + "thirdPartyBackupImageImpressionsUrl": { + "type": "string", + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." + }, + "thirdPartyRichMediaImpressionsUrl": { + "type": "string", + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." + }, + "thirdPartyUrls": { + "type": "array", + "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "items": { + "$ref": "ThirdPartyTrackingUrl" + } + }, + "timerCustomEvents": { + "type": "array", + "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "totalFileSize": { + "type": "string", + "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of this creative.This is a required field. Applicable to all creative types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "version": { + "type": "integer", + "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", + "format": "int32" + }, + "videoDescription": { + "type": "string", + "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "videoDuration": { + "type": "number", + "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", + "format": "float" + } + } + }, + "CreativeAsset": { + "id": "CreativeAsset", + "type": "object", + "description": "Creative Asset.", + "properties": { + "actionScript3": { + "type": "boolean", + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "active": { + "type": "boolean", + "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "alignment": { + "type": "string", + "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", + "enum": [ + "ALIGNMENT_BOTTOM", + "ALIGNMENT_LEFT", + "ALIGNMENT_RIGHT", + "ALIGNMENT_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "artworkType": { + "type": "string", + "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "backupImageExit": { + "$ref": "CreativeCustomEvent", + "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." + }, + "bitRate": { + "type": "integer", + "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "int32" + }, + "childAssetType": { + "type": "string", + "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", + "enum": [ + "CHILD_ASSET_TYPE_DATA", + "CHILD_ASSET_TYPE_FLASH", + "CHILD_ASSET_TYPE_IMAGE", + "CHILD_ASSET_TYPE_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "collapsedSize": { + "$ref": "Size", + "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "customStartTimeValue": { + "type": "integer", + "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "format": "int32" + }, + "detectedFeatures": { + "type": "array", + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "displayType": { + "type": "string", + "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", + "ASSET_DISPLAY_TYPE_EXPANDING", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", + "ASSET_DISPLAY_TYPE_FLOATING", + "ASSET_DISPLAY_TYPE_INPAGE", + "ASSET_DISPLAY_TYPE_OVERLAY", + "ASSET_DISPLAY_TYPE_PEEL_DOWN", + "ASSET_DISPLAY_TYPE_VPAID_LINEAR", + "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "duration": { + "type": "integer", + "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO.", + "format": "int32" + }, + "durationType": { + "type": "string", + "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DURATION_TYPE_AUTO", + "ASSET_DURATION_TYPE_CUSTOM", + "ASSET_DURATION_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "expandedDimension": { + "$ref": "Size", + "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "fileSize": { + "type": "string", + "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64" + }, + "flashVersion": { + "type": "integer", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32" + }, + "hideFlashObjects": { + "type": "boolean", + "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "hideSelectionBoxes": { + "type": "boolean", + "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "horizontallyLocked": { + "type": "boolean", + "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." + }, + "id": { + "type": "string", + "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64" + }, + "mimeType": { + "type": "string", + "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "originalBackup": { + "type": "boolean", + "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA." + }, + "position": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "positionLeftUnit": { + "type": "string", + "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "positionTopUnit": { + "type": "string", + "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "progressiveServingUrl": { + "type": "string", + "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "pushdown": { + "type": "boolean", + "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height." + }, + "pushdownDuration": { + "type": "number", + "description": "Pushdown duration in seconds for an asset. Must be between 0 and 9.99. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.", + "format": "float" + }, + "role": { + "type": "string", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", + "enum": [ + "ADDITIONAL_FLASH", + "ADDITIONAL_IMAGE", + "ALTERNATE_VIDEO", + "BACKUP_IMAGE", + "OTHER", + "PARENT_VIDEO", + "PRIMARY", + "TRANSCODED_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "startTimeType": { + "type": "string", + "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_START_TIME_TYPE_CUSTOM", + "ASSET_START_TIME_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "streamingServingUrl": { + "type": "string", + "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "transparency": { + "type": "boolean", + "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets." + }, + "verticallyLocked": { + "type": "boolean", + "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." + }, + "videoDuration": { + "type": "number", + "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "float" + }, + "windowMode": { + "type": "string", + "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", + "enum": [ + "OPAQUE", + "TRANSPARENT", + "WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "zIndex": { + "type": "integer", + "description": "zIndex value of an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY.", + "format": "int32" + }, + "zipFilename": { + "type": "string", + "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." + }, + "zipFilesize": { + "type": "string", + "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." + } + } + }, + "CreativeAssetId": { + "id": "CreativeAssetId", + "type": "object", + "description": "Creative Asset ID.", + "properties": { + "name": { + "type": "string", + "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed." + }, + "type": { + "type": "string", + "description": "Type of asset to upload. This is a required field. IMAGE is solely used for IMAGE creatives. Other image assets should use HTML_IMAGE.", + "enum": [ + "FLASH", + "HTML", + "HTML_IMAGE", + "IMAGE", + "VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, + "CreativeAssetMetadata": { + "id": "CreativeAssetMetadata", + "type": "object", + "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", + "properties": { + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "ID of the creative asset. This is a required field." + }, + "clickTags": { + "type": "array", + "description": "List of detected click tags for assets. This is a read-only auto-generated field.", + "items": { + "$ref": "ClickTag" + } + }, + "detectedFeatures": { + "type": "array", + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", + "default": "dfareporting#creativeAssetMetadata" + }, + "warnedValidationRules": { + "type": "array", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", + "items": { + "type": "string", + "enum": [ + "ADMOB_REFERENCED", + "ASSET_FORMAT_UNSUPPORTED_DCM", + "ASSET_INVALID", + "CLICK_TAG_HARD_CODED", + "CLICK_TAG_INVALID", + "CLICK_TAG_IN_GWD", + "CLICK_TAG_MISSING", + "CLICK_TAG_MORE_THAN_ONE", + "CLICK_TAG_NON_TOP_LEVEL", + "COMPONENT_UNSUPPORTED_DCM", + "ENABLER_UNSUPPORTED_METHOD_DCM", + "EXTERNAL_FILE_REFERENCED", + "FILE_DETAIL_EMPTY", + "FILE_TYPE_INVALID", + "GWD_PROPERTIES_INVALID", + "HTML5_FEATURE_UNSUPPORTED", + "LINKED_FILE_NOT_FOUND", + "MAX_FLASH_VERSION_11", + "MRAID_REFERENCED", + "NOT_SSL_COMPLIANT", + "ORPHANED_ASSET", + "PRIMARY_HTML_MISSING", + "SVG_INVALID", + "ZIP_INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + } + }, + "CreativeAssignment": { + "id": "CreativeAssignment", + "type": "object", + "description": "Creative Assignment.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation." + }, + "applyEventTags": { + "type": "boolean", + "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of the creative assignment." + }, + "companionCreativeOverrides": { + "type": "array", + "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", + "items": { + "$ref": "CompanionClickThroughOverride" + } + }, + "creativeGroupAssignments": { + "type": "array", + "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + } + }, + "creativeId": { + "type": "string", + "description": "ID of the creative to be assigned. This is a required field.", + "format": "int64" + }, + "creativeIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." + }, + "endTime": { + "type": "string", + "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", + "format": "date-time" + }, + "richMediaExitOverrides": { + "type": "array", + "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- ADVANCED_BANNER\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", + "items": { + "$ref": "RichMediaExitOverride" + } + }, + "sequence": { + "type": "integer", + "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL.", + "format": "int32" + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "startTime": { + "type": "string", + "description": "Date and time that the assigned creative should start serving.", + "format": "date-time" + }, + "weight": { + "type": "integer", + "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM.", + "format": "int32" + } + } + }, + "CreativeCustomEvent": { + "id": "CreativeCustomEvent", + "type": "object", + "description": "Creative Custom Event.", + "properties": { + "advertiserCustomEventId": { + "type": "string", + "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", + "format": "int64" + }, + "advertiserCustomEventName": { + "type": "string", + "description": "User-entered name for the event." + }, + "advertiserCustomEventType": { + "type": "string", + "description": "Type of the event. This is a read-only field.", + "enum": [ + "ADVERTISER_EVENT_COUNTER", + "ADVERTISER_EVENT_EXIT", + "ADVERTISER_EVENT_TIMER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "artworkLabel": { + "type": "string", + "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion." + }, + "artworkType": { + "type": "string", + "description": "Artwork type used by the creative.This is a read-only field.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "exitUrl": { + "type": "string", + "description": "Exit URL of the event. This field is used only for exit events." + }, + "id": { + "type": "string", + "description": "ID of this event. This is a required field and should not be modified after insertion.", + "format": "int64" + }, + "popupWindowProperties": { + "$ref": "PopupWindowProperties", + "description": "Properties for rich media popup windows. This field is used only for exit events." + }, + "targetType": { + "type": "string", + "description": "Target type used by the event.", + "enum": [ + "TARGET_BLANK", + "TARGET_PARENT", + "TARGET_POPUP", + "TARGET_SELF", + "TARGET_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "videoReportingId": { + "type": "string", + "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field." + } + } + }, + "CreativeField": { + "id": "CreativeField", + "type": "object", + "description": "Contains properties of a creative field.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative field. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this creative field. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", + "default": "dfareporting#creativeField" + }, + "name": { + "type": "string", + "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "CreativeFieldAssignment": { + "id": "CreativeFieldAssignment", + "type": "object", + "description": "Creative Field Assignment.", + "properties": { + "creativeFieldId": { + "type": "string", + "description": "ID of the creative field.", + "format": "int64" + }, + "creativeFieldValueId": { + "type": "string", + "description": "ID of the creative field value.", + "format": "int64" + } + } + }, + "CreativeFieldValue": { + "id": "CreativeFieldValue", + "type": "object", + "description": "Contains properties of a creative field value.", + "properties": { + "id": { + "type": "string", + "description": "ID of this creative field value. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", + "default": "dfareporting#creativeFieldValue" + }, + "value": { + "type": "string", + "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field." + } + } + }, + "CreativeFieldValuesListResponse": { + "id": "CreativeFieldValuesListResponse", + "type": "object", + "description": "Creative Field Value List Response", + "properties": { + "creativeFieldValues": { + "type": "array", + "description": "Creative field value collection.", + "items": { + "$ref": "CreativeFieldValue" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", + "default": "dfareporting#creativeFieldValuesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeFieldsListResponse": { + "id": "CreativeFieldsListResponse", + "type": "object", + "description": "Creative Field List Response", + "properties": { + "creativeFields": { + "type": "array", + "description": "Creative field collection.", + "items": { + "$ref": "CreativeField" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", + "default": "dfareporting#creativeFieldsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeGroup": { + "id": "CreativeGroup", + "type": "object", + "description": "Contains properties of a creative group.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative group. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "groupNumber": { + "type": "integer", + "description": "Subgroup of the creative group. Assign your creative groups to one of the following subgroups in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion.\nAcceptable values are: \n- 1\n- 2", + "format": "int32" + }, + "id": { + "type": "string", + "description": "ID of this creative group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", + "default": "dfareporting#creativeGroup" + }, + "name": { + "type": "string", + "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "CreativeGroupAssignment": { + "id": "CreativeGroupAssignment", + "type": "object", + "description": "Creative Group Assignment.", + "properties": { + "creativeGroupId": { + "type": "string", + "description": "ID of the creative group to be assigned.", + "format": "int64" + }, + "creativeGroupNumber": { + "type": "string", + "description": "Creative group number of the creative group assignment.", + "enum": [ + "CREATIVE_GROUP_ONE", + "CREATIVE_GROUP_TWO" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "CreativeGroupsListResponse": { + "id": "CreativeGroupsListResponse", + "type": "object", + "description": "Creative Group List Response", + "properties": { + "creativeGroups": { + "type": "array", + "description": "Creative group collection.", + "items": { + "$ref": "CreativeGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", + "default": "dfareporting#creativeGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeOptimizationConfiguration": { + "id": "CreativeOptimizationConfiguration", + "type": "object", + "description": "Creative optimization settings.", + "properties": { + "id": { + "type": "string", + "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long." + }, + "optimizationActivitys": { + "type": "array", + "description": "List of optimization activities associated with this configuration.", + "items": { + "$ref": "OptimizationActivity" + } + }, + "optimizationModel": { + "type": "string", + "description": "Optimization model for this configuration.", + "enum": [ + "CLICK", + "POST_CLICK", + "POST_CLICK_AND_IMPRESSION", + "POST_IMPRESSION", + "VIDEO_COMPLETION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, + "CreativeRotation": { + "id": "CreativeRotation", + "type": "object", + "description": "Creative Rotation.", + "properties": { + "creativeAssignments": { + "type": "array", + "description": "Creative assignments in this creative rotation.", + "items": { + "$ref": "CreativeAssignment" + } + }, + "creativeOptimizationConfigurationId": { + "type": "string", + "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", + "enum": [ + "CREATIVE_ROTATION_TYPE_RANDOM", + "CREATIVE_ROTATION_TYPE_SEQUENTIAL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "weightCalculationStrategy": { + "type": "string", + "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", + "enum": [ + "WEIGHT_STRATEGY_CUSTOM", + "WEIGHT_STRATEGY_EQUAL", + "WEIGHT_STRATEGY_HIGHEST_CTR", + "WEIGHT_STRATEGY_OPTIMIZED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "CreativeSettings": { + "id": "CreativeSettings", + "type": "object", + "description": "Creative Settings", + "properties": { + "iFrameFooter": { + "type": "string", + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." + }, + "iFrameHeader": { + "type": "string", + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." + } + } + }, + "CreativesListResponse": { + "id": "CreativesListResponse", + "type": "object", + "description": "Creative List Response", + "properties": { + "creatives": { + "type": "array", + "description": "Creative collection.", + "items": { + "$ref": "Creative" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", + "default": "dfareporting#creativesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CrossDimensionReachReportCompatibleFields": { + "id": "CrossDimensionReachReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", + "default": "dfareporting#crossDimensionReachReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "overlapMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "CustomFloodlightVariable": { + "id": "CustomFloodlightVariable", + "type": "object", + "description": "A custom floodlight variable.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", + "default": "dfareporting#customFloodlightVariable" + }, + "type": { + "type": "string", + "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters." + } + } + }, + "CustomRichMediaEvents": { + "id": "CustomRichMediaEvents", + "type": "object", + "description": "Represents a Custom Rich Media Events group.", + "properties": { + "filteredEventIds": { + "type": "array", + "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", + "default": "dfareporting#customRichMediaEvents" + } + } + }, + "DateRange": { + "id": "DateRange", + "type": "object", + "description": "Represents a date range.", + "properties": { + "endDate": { + "type": "string", + "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date" + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dateRange.", + "default": "dfareporting#dateRange" + }, + "relativeDateRange": { + "type": "string", + "description": "The date range relative to the date of when the report is run.", + "enum": [ + "LAST_24_MONTHS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TODAY", + "WEEK_TO_DATE", + "YEAR_TO_DATE", + "YESTERDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date" + } + } + }, + "DayPartTargeting": { + "id": "DayPartTargeting", + "type": "object", + "description": "Day Part Targeting.", + "properties": { + "daysOfWeek": { + "type": "array", + "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", + "items": { + "type": "string", + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "hoursOfDay": { + "type": "array", + "description": "Hours of the day when the ad will serve. Must be an integer between 0 and 23 (inclusive), where 0 is midnight to 1 AM, and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example, if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm.", + "items": { + "type": "integer", + "format": "int32" + } + }, + "userLocalTime": { + "type": "boolean", + "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies." + } + } + }, + "DefaultClickThroughEventTagProperties": { + "id": "DefaultClickThroughEventTagProperties", + "type": "object", + "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", + "properties": { + "defaultClickThroughEventTagId": { + "type": "string", + "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", + "format": "int64" + }, + "overrideInheritedEventTag": { + "type": "boolean", + "description": "Whether this entity should override the inherited default click-through event tag with its own defined value." + } + } + }, + "DeliverySchedule": { + "id": "DeliverySchedule", + "type": "object", + "description": "Delivery Schedule.", + "properties": { + "frequencyCap": { + "$ref": "FrequencyCap", + "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." + }, + "hardCutoff": { + "type": "boolean", + "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals." + }, + "impressionRatio": { + "type": "string", + "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Must be between 1 and 10.", + "format": "int64" + }, + "priority": { + "type": "string", + "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", + "enum": [ + "AD_PRIORITY_01", + "AD_PRIORITY_02", + "AD_PRIORITY_03", + "AD_PRIORITY_04", + "AD_PRIORITY_05", + "AD_PRIORITY_06", + "AD_PRIORITY_07", + "AD_PRIORITY_08", + "AD_PRIORITY_09", + "AD_PRIORITY_10", + "AD_PRIORITY_11", + "AD_PRIORITY_12", + "AD_PRIORITY_13", + "AD_PRIORITY_14", + "AD_PRIORITY_15", + "AD_PRIORITY_16" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "DfpSettings": { + "id": "DfpSettings", + "type": "object", + "description": "DFP Settings", + "properties": { + "dfp_network_code": { + "type": "string", + "description": "DFP network code for this directory site." + }, + "dfp_network_name": { + "type": "string", + "description": "DFP network name for this directory site." + }, + "programmaticPlacementAccepted": { + "type": "boolean", + "description": "Whether this directory site accepts programmatic placements." + }, + "pubPaidPlacementAccepted": { + "type": "boolean", + "description": "Whether this directory site accepts publisher-paid tags." + }, + "publisherPortalOnly": { + "type": "boolean", + "description": "Whether this directory site is available only via DoubleClick Publisher Portal." + } + } + }, + "Dimension": { + "id": "Dimension", + "type": "object", + "description": "Represents a dimension.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimension.", + "default": "dfareporting#dimension" + }, + "name": { + "type": "string", + "description": "The dimension name, e.g. dfa:advertiser" + } + } + }, + "DimensionFilter": { + "id": "DimensionFilter", + "type": "object", + "description": "Represents a dimension filter.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension to filter." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", + "default": "dfareporting#dimensionFilter" + }, + "value": { + "type": "string", + "description": "The value of the dimension to filter." + } + } + }, + "DimensionValue": { + "id": "DimensionValue", + "type": "object", + "description": "Represents a DimensionValue resource.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "id": { + "type": "string", + "description": "The ID associated with the value if available." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", + "default": "dfareporting#dimensionValue" + }, + "matchType": { + "type": "string", + "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", + "enum": [ + "BEGINS_WITH", + "CONTAINS", + "EXACT", + "WILDCARD_EXPRESSION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "The value of the dimension." + } + } + }, + "DimensionValueList": { + "id": "DimensionValueList", + "type": "object", + "description": "Represents the list of DimensionValue resources.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The dimension values returned in this response.", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", + "default": "dfareporting#dimensionValueList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "DimensionValueRequest": { + "id": "DimensionValueRequest", + "type": "object", + "description": "Represents a DimensionValuesRequest.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension for which values should be requested.", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + }, + "endDate": { + "type": "string", + "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + }, + "filters": { + "type": "array", + "description": "The list of filters by which to filter values. The filters are ANDed.", + "items": { + "$ref": "DimensionFilter" + } + }, + "kind": { + "type": "string", + "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", + "default": "dfareporting#dimensionValueRequest" + }, + "startDate": { + "type": "string", + "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + } + } + }, + "DirectorySite": { + "id": "DirectorySite", + "type": "object", + "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this directory site is active." + }, + "contactAssignments": { + "type": "array", + "description": "Directory site contacts.", + "items": { + "$ref": "DirectorySiteContactAssignment" + } + }, + "countryId": { + "type": "string", + "description": "Country ID of this directory site.", + "format": "int64" + }, + "currencyId": { + "type": "string", + "description": "Currency ID of this directory site.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK", + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of this directory site." + }, + "id": { + "type": "string", + "description": "ID of this directory site. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." + }, + "inpageTagFormats": { + "type": "array", + "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", + "items": { + "type": "string", + "enum": [ + "IFRAME_JAVASCRIPT_INPAGE", + "INTERNAL_REDIRECT_INPAGE", + "JAVASCRIPT_INPAGE", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + }, + "interstitialTagFormats": { + "type": "array", + "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", + "items": { + "type": "string", + "enum": [ + "IFRAME_JAVASCRIPT_INTERSTITIAL", + "INTERNAL_REDIRECT_INTERSTITIAL", + "JAVASCRIPT_INTERSTITIAL" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", + "default": "dfareporting#directorySite" + }, + "name": { + "type": "string", + "description": "Name of this directory site." + }, + "parentId": { + "type": "string", + "description": "Parent directory site ID.", + "format": "int64" + }, + "settings": { + "$ref": "DirectorySiteSettings", + "description": "Directory site settings." + }, + "url": { + "type": "string", + "description": "URL of this directory site." + } + } + }, + "DirectorySiteContact": { + "id": "DirectorySiteContact", + "type": "object", + "description": "Contains properties of a Site Directory contact.", + "properties": { + "address": { + "type": "string", + "description": "Address of this directory site contact." + }, + "email": { + "type": "string", + "description": "Email address of this directory site contact." + }, + "firstName": { + "type": "string", + "description": "First name of this directory site contact." + }, + "id": { + "type": "string", + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", + "default": "dfareporting#directorySiteContact" + }, + "lastName": { + "type": "string", + "description": "Last name of this directory site contact." + }, + "phone": { + "type": "string", + "description": "Phone number of this directory site contact." + }, + "role": { + "type": "string", + "description": "Directory site contact role.", + "enum": [ + "ADMIN", + "EDIT", + "VIEW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "title": { + "type": "string", + "description": "Title or designation of this directory site contact." + }, + "type": { + "type": "string", + "description": "Directory site contact type.", + "enum": [ + "BILLING", + "OTHER", + "SALES", + "TECHNICAL" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "DirectorySiteContactAssignment": { + "id": "DirectorySiteContactAssignment", + "type": "object", + "description": "Directory Site Contact Assignment", + "properties": { + "contactId": { + "type": "string", + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "visibility": { + "type": "string", + "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", + "enum": [ + "PRIVATE", + "PUBLIC" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "DirectorySiteContactsListResponse": { + "id": "DirectorySiteContactsListResponse", + "type": "object", + "description": "Directory Site Contact List Response", + "properties": { + "directorySiteContacts": { + "type": "array", + "description": "Directory site contact collection", + "items": { + "$ref": "DirectorySiteContact" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", + "default": "dfareporting#directorySiteContactsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "DirectorySiteSettings": { + "id": "DirectorySiteSettings", + "type": "object", + "description": "Directory Site Settings", + "properties": { + "activeViewOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled active view creatives." + }, + "dfp_settings": { + "$ref": "DfpSettings", + "description": "Directory site DFP settings." + }, + "instream_video_placement_accepted": { + "type": "boolean", + "description": "Whether this site accepts in-stream video ads." + }, + "interstitialPlacementAccepted": { + "type": "boolean", + "description": "Whether this site accepts interstitial ads." + }, + "nielsenOcrOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled Nielsen OCR reach ratings." + }, + "verificationTagOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled generation of Verification ins tags." + }, + "videoActiveViewOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled active view for in-stream video creatives." + } + } + }, + "DirectorySitesListResponse": { + "id": "DirectorySitesListResponse", + "type": "object", + "description": "Directory Site List Response", + "properties": { + "directorySites": { + "type": "array", + "description": "Directory site collection.", + "items": { + "$ref": "DirectorySite" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", + "default": "dfareporting#directorySitesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "DynamicTargetingKey": { + "id": "DynamicTargetingKey", + "type": "object", + "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", + "default": "dfareporting#dynamicTargetingKey" + }, + "name": { + "type": "string", + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase." + }, + "objectId": { + "type": "string", + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64" + }, + "objectType": { + "type": "string", + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "DynamicTargetingKeysListResponse": { + "id": "DynamicTargetingKeysListResponse", + "type": "object", + "description": "Dynamic Targeting Key List Response", + "properties": { + "dynamicTargetingKeys": { + "type": "array", + "description": "Dynamic targeting key collection.", + "items": { + "$ref": "DynamicTargetingKey" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", + "default": "dfareporting#dynamicTargetingKeysListResponse" + } + } + }, + "EncryptionInfo": { + "id": "EncryptionInfo", + "type": "object", + "description": "A description of how user IDs are encrypted.", + "properties": { + "encryptionEntityId": { + "type": "string", + "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", + "format": "int64" + }, + "encryptionEntityType": { + "type": "string", + "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", + "enum": [ + "ADWORDS_CUSTOMER", + "DBM_ADVERTISER", + "DBM_PARTNER", + "DCM_ACCOUNT", + "DCM_ADVERTISER", + "ENCRYPTION_ENTITY_TYPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "encryptionSource": { + "type": "string", + "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", + "enum": [ + "AD_SERVING", + "DATA_TRANSFER", + "ENCRYPTION_SCOPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", + "default": "dfareporting#encryptionInfo" + } + } + }, + "EventTag": { + "id": "EventTag", + "type": "object", + "description": "Contains properties of an event tag.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "enabledByDefault": { + "type": "boolean", + "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads." + }, + "excludeFromAdxRequests": { + "type": "boolean", + "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network." + }, + "id": { + "type": "string", + "description": "ID of this event tag. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", + "default": "dfareporting#eventTag" + }, + "name": { + "type": "string", + "description": "Name of this event tag. This is a required field and must be less than 256 characters long." + }, + "siteFilterType": { + "type": "string", + "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", + "enum": [ + "BLACKLIST", + "WHITELIST" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "siteIds": { + "type": "array", + "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", + "items": { + "type": "string", + "format": "int64" + } + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether this tag is SSL-compliant or not. This is a read-only field." + }, + "status": { + "type": "string", + "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", + "enum": [ + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "url": { + "type": "string", + "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion." + }, + "urlEscapeLevels": { + "type": "integer", + "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", + "format": "int32" + } + } + }, + "EventTagOverride": { + "id": "EventTagOverride", + "type": "object", + "description": "Event tag override information.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether this override is enabled." + }, + "id": { + "type": "string", + "description": "ID of this event tag override. This is a read-only, auto-generated field.", + "format": "int64" + } + } + }, + "EventTagsListResponse": { + "id": "EventTagsListResponse", + "type": "object", + "description": "Event Tag List Response", + "properties": { + "eventTags": { + "type": "array", + "description": "Event tag collection.", + "items": { + "$ref": "EventTag" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", + "default": "dfareporting#eventTagsListResponse" + } + } + }, + "File": { + "id": "File", + "type": "object", + "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "fileName": { + "type": "string", + "description": "The filename of the file." + }, + "format": { + "type": "string", + "description": "The output format of the report. Only available once the file is available.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "The unique ID of this report file.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#file.", + "default": "dfareporting#file" + }, + "lastModifiedTime": { + "type": "string", + "description": "The timestamp in milliseconds since epoch when this file was last modified.", + "format": "int64" + }, + "reportId": { + "type": "string", + "description": "The ID of the report this file was generated from.", + "format": "int64" + }, + "status": { + "type": "string", + "description": "The status of the report file.", + "enum": [ + "CANCELLED", + "FAILED", + "PROCESSING", + "REPORT_AVAILABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "urls": { + "type": "object", + "description": "The URLs where the completed report file can be downloaded.", + "properties": { + "apiUrl": { + "type": "string", + "description": "The URL for downloading the report data through the API." + }, + "browserUrl": { + "type": "string", + "description": "The URL for downloading the report data through a browser." + } + } + } + } + }, + "FileList": { + "id": "FileList", + "type": "object", + "description": "Represents the list of File resources.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The files returned in this response.", + "items": { + "$ref": "File" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#fileList.", + "default": "dfareporting#fileList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "Flight": { + "id": "Flight", + "type": "object", + "description": "Flight", + "properties": { + "endDate": { + "type": "string", + "description": "Inventory item flight end date.", + "format": "date" + }, + "rateOrCost": { + "type": "string", + "description": "Rate or cost of this flight.", + "format": "int64" + }, + "startDate": { + "type": "string", + "description": "Inventory item flight start date.", + "format": "date" + }, + "units": { + "type": "string", + "description": "Units of this flight.", + "format": "int64" + } + } + }, + "FloodlightActivitiesGenerateTagResponse": { + "id": "FloodlightActivitiesGenerateTagResponse", + "type": "object", + "description": "Floodlight Activity GenerateTag Response", + "properties": { + "floodlightActivityTag": { + "type": "string", + "description": "Generated tag for this floodlight activity." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", + "default": "dfareporting#floodlightActivitiesGenerateTagResponse" + } + } + }, + "FloodlightActivitiesListResponse": { + "id": "FloodlightActivitiesListResponse", + "type": "object", + "description": "Floodlight Activity List Response", + "properties": { + "floodlightActivities": { + "type": "array", + "description": "Floodlight activity collection.", + "items": { + "$ref": "FloodlightActivity" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", + "default": "dfareporting#floodlightActivitiesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "FloodlightActivity": { + "id": "FloodlightActivity", + "type": "object", + "description": "Contains properties of a Floodlight activity.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "cacheBustingType": { + "type": "string", + "description": "Code type used for cache busting in the generated tag.", + "enum": [ + "ACTIVE_SERVER_PAGE", + "COLD_FUSION", + "JAVASCRIPT", + "JSP", + "PHP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "countingMethod": { + "type": "string", + "description": "Counting method for conversions for this floodlight activity. This is a required field.", + "enum": [ + "ITEMS_SOLD_COUNTING", + "SESSION_COUNTING", + "STANDARD_COUNTING", + "TRANSACTIONS_COUNTING", + "UNIQUE_COUNTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "defaultTags": { + "type": "array", + "description": "Dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityDynamicTag" + } + }, + "expectedUrl": { + "type": "string", + "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long." + }, + "floodlightActivityGroupId": { + "type": "string", + "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", + "format": "int64" + }, + "floodlightActivityGroupName": { + "type": "string", + "description": "Name of the associated floodlight activity group. This is a read-only field." + }, + "floodlightActivityGroupTagString": { + "type": "string", + "description": "Tag string of the associated floodlight activity group. This is a read-only field." + }, + "floodlightActivityGroupType": { + "type": "string", + "description": "Type of the associated floodlight activity group. This is a read-only field.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "hidden": { + "type": "boolean", + "description": "Whether this activity is archived." + }, + "id": { + "type": "string", + "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." + }, + "imageTagEnabled": { + "type": "boolean", + "description": "Whether the image tag is enabled for this activity." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", + "default": "dfareporting#floodlightActivity" + }, + "name": { + "type": "string", + "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes." + }, + "notes": { + "type": "string", + "description": "General notes or implementation instructions for the tag." + }, + "publisherTags": { + "type": "array", + "description": "Publisher dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityPublisherDynamicTag" + } + }, + "secure": { + "type": "boolean", + "description": "Whether this tag should use SSL." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether this floodlight activity must be SSL-compliant." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagFormat": { + "type": "string", + "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", + "enum": [ + "HTML", + "XHTML" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "tagString": { + "type": "string", + "description": "Value of the cat= paramter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion." + }, + "userDefinedVariableTypes": { + "type": "array", + "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-20]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are:\n- \"U1\"\n- \"U2\"\n- \"U3\"\n- \"U4\"\n- \"U5\"\n- \"U6\"\n- \"U7\"\n- \"U8\"\n- \"U9\"\n- \"U10\"\n- \"U11\"\n- \"U12\"\n- \"U13\"\n- \"U14\"\n- \"U15\"\n- \"U16\"\n- \"U17\"\n- \"U18\"\n- \"U19\"\n- \"U20\"", + "items": { + "type": "string", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + } + }, + "FloodlightActivityDynamicTag": { + "id": "FloodlightActivityDynamicTag", + "type": "object", + "description": "Dynamic Tag", + "properties": { + "id": { + "type": "string", + "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this tag." + }, + "tag": { + "type": "string", + "description": "Tag code." + } + } + }, + "FloodlightActivityGroup": { + "id": "FloodlightActivityGroup", + "type": "object", + "description": "Contains properties of a Floodlight activity group.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", + "default": "dfareporting#floodlightActivityGroup" + }, + "name": { + "type": "string", + "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagString": { + "type": "string", + "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion." + }, + "type": { + "type": "string", + "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "FloodlightActivityGroupsListResponse": { + "id": "FloodlightActivityGroupsListResponse", + "type": "object", + "description": "Floodlight Activity Group List Response", + "properties": { + "floodlightActivityGroups": { + "type": "array", + "description": "Floodlight activity group collection.", + "items": { + "$ref": "FloodlightActivityGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", + "default": "dfareporting#floodlightActivityGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "FloodlightActivityPublisherDynamicTag": { + "id": "FloodlightActivityPublisherDynamicTag", + "type": "object", + "description": "Publisher Dynamic Tag", + "properties": { + "clickThrough": { + "type": "boolean", + "description": "Whether this tag is applicable only for click-throughs." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", + "format": "int64" + }, + "dynamicTag": { + "$ref": "FloodlightActivityDynamicTag", + "description": "Dynamic floodlight tag." + }, + "siteId": { + "type": "string", + "description": "Site ID of this dynamic tag.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "viewThrough": { + "type": "boolean", + "description": "Whether this tag is applicable only for view-throughs." + } + } + }, + "FloodlightConfiguration": { + "id": "FloodlightConfiguration", + "type": "object", + "description": "Contains properties of a Floodlight configuration.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "analyticsDataSharingEnabled": { + "type": "boolean", + "description": "Whether advertiser data is shared with Google Analytics." + }, + "exposureToConversionEnabled": { + "type": "boolean", + "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." + }, + "firstDayOfWeek": { + "type": "string", + "description": "Day that will be counted as the first day of the week in reports. This is a required field.", + "enum": [ + "MONDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." + }, + "inAppAttributionTrackingEnabled": { + "type": "boolean", + "description": "Whether in-app attribution tracking is enabled." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", + "default": "dfareporting#floodlightConfiguration" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this floodlight configuration." + }, + "naturalSearchConversionAttributionOption": { + "type": "string", + "description": "Types of attribution options for natural search conversions.", + "enum": [ + "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "omnitureSettings": { + "$ref": "OmnitureSettings", + "description": "Settings for DCM Omniture integration." + }, + "standardVariableTypes": { + "type": "array", + "description": "List of standard variables enabled for this configuration.\n\nAcceptable values are:\n- \"ORD\"\n- \"NUM\"", + "items": { + "type": "string", + "enum": [ + "NUM", + "ORD", + "TRAN", + "U" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagSettings": { + "$ref": "TagSettings", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "thirdPartyAuthenticationTokens": { + "type": "array", + "description": "List of third-party authentication tokens enabled for this configuration.", + "items": { + "$ref": "ThirdPartyAuthenticationToken" + } + }, + "userDefinedVariableConfigurations": { + "type": "array", + "description": "List of user defined variables enabled for this configuration.", + "items": { + "$ref": "UserDefinedVariableConfiguration" + } + } + } + }, + "FloodlightConfigurationsListResponse": { + "id": "FloodlightConfigurationsListResponse", + "type": "object", + "description": "Floodlight Configuration List Response", + "properties": { + "floodlightConfigurations": { + "type": "array", + "description": "Floodlight configuration collection.", + "items": { + "$ref": "FloodlightConfiguration" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", + "default": "dfareporting#floodlightConfigurationsListResponse" + } + } + }, + "FloodlightReportCompatibleFields": { + "id": "FloodlightReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", + "default": "dfareporting#floodlightReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "FrequencyCap": { + "id": "FrequencyCap", + "type": "object", + "description": "Frequency Cap.", + "properties": { + "duration": { + "type": "string", + "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days in seconds, or 7,776,000.", + "format": "int64" + }, + "impressions": { + "type": "string", + "description": "Number of times an individual user can be served the ad within the specified duration. The maximum allowed is 15.", + "format": "int64" + } + } + }, + "FsCommand": { + "id": "FsCommand", + "type": "object", + "description": "FsCommand.", + "properties": { + "left": { + "type": "integer", + "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32" + }, + "positionOption": { + "type": "string", + "description": "Position in the browser where the window will open.", + "enum": [ + "CENTERED", + "DISTANCE_FROM_TOP_LEFT_CORNER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "top": { + "type": "integer", + "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32" + }, + "windowHeight": { + "type": "integer", + "description": "Height of the window.", + "format": "int32" + }, + "windowWidth": { + "type": "integer", + "description": "Width of the window.", + "format": "int32" + } + } + }, + "GeoTargeting": { + "id": "GeoTargeting", + "type": "object", + "description": "Geographical Targeting.", + "properties": { + "cities": { + "type": "array", + "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", + "items": { + "$ref": "City" + } + }, + "countries": { + "type": "array", + "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", + "items": { + "$ref": "Country" + } + }, + "excludeCountries": { + "type": "boolean", + "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad." + }, + "metros": { + "type": "array", + "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", + "items": { + "$ref": "Metro" + } + }, + "postalCodes": { + "type": "array", + "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", + "items": { + "$ref": "PostalCode" + } + }, + "regions": { + "type": "array", + "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", + "items": { + "$ref": "Region" + } + } + } + }, + "InventoryItem": { + "id": "InventoryItem", + "type": "object", + "description": "Represents a buy from the DoubleClick Planning inventory store.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this inventory item.", + "format": "int64" + }, + "adSlots": { + "type": "array", + "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", + "items": { + "$ref": "AdSlot" + } + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this inventory item.", + "format": "int64" + }, + "contentCategoryId": { + "type": "string", + "description": "Content category ID of this inventory item.", + "format": "int64" + }, + "estimatedClickThroughRate": { + "type": "string", + "description": "Estimated click-through rate of this inventory item.", + "format": "int64" + }, + "estimatedConversionRate": { + "type": "string", + "description": "Estimated conversion rate of this inventory item.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this inventory item.", + "format": "int64" + }, + "inPlan": { + "type": "boolean", + "description": "Whether this inventory item is in plan." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", + "default": "dfareporting#inventoryItem" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this inventory item." + }, + "name": { + "type": "string", + "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots." + }, + "negotiationChannelId": { + "type": "string", + "description": "Negotiation channel ID of this inventory item.", + "format": "int64" + }, + "orderId": { + "type": "string", + "description": "Order ID of this inventory item.", + "format": "int64" + }, + "placementStrategyId": { + "type": "string", + "description": "Placement strategy ID of this inventory item.", + "format": "int64" + }, + "pricing": { + "$ref": "Pricing", + "description": "Pricing of this inventory item." + }, + "projectId": { + "type": "string", + "description": "Project ID of this inventory item.", + "format": "int64" + }, + "rfpId": { + "type": "string", + "description": "RFP ID of this inventory item.", + "format": "int64" + }, + "siteId": { + "type": "string", + "description": "ID of the site this inventory item is associated with.", + "format": "int64" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this inventory item.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of inventory item.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "InventoryItemsListResponse": { + "id": "InventoryItemsListResponse", + "type": "object", + "description": "Inventory item List Response", + "properties": { + "inventoryItems": { + "type": "array", + "description": "Inventory item collection", + "items": { + "$ref": "InventoryItem" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", + "default": "dfareporting#inventoryItemsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "KeyValueTargetingExpression": { + "id": "KeyValueTargetingExpression", + "type": "object", + "description": "Key Value Targeting Expression.", + "properties": { + "expression": { + "type": "string", + "description": "Keyword expression being targeted by the ad." + } + } + }, + "LandingPage": { + "id": "LandingPage", + "type": "object", + "description": "Contains information about where a user's browser is taken after the user clicks an ad.", + "properties": { + "default": { + "type": "boolean", + "description": "Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign." + }, + "id": { + "type": "string", + "description": "ID of this landing page. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", + "default": "dfareporting#landingPage" + }, + "name": { + "type": "string", + "description": "Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign." + }, + "url": { + "type": "string", + "description": "URL of this landing page. This is a required field." + } + } + }, + "LandingPagesListResponse": { + "id": "LandingPagesListResponse", + "type": "object", + "description": "Landing Page List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPagesListResponse\".", + "default": "dfareporting#landingPagesListResponse" + }, + "landingPages": { + "type": "array", + "description": "Landing page collection", + "items": { + "$ref": "LandingPage" + } + } + } + }, + "LastModifiedInfo": { + "id": "LastModifiedInfo", + "type": "object", + "description": "Modification timestamp.", + "properties": { + "time": { + "type": "string", + "description": "Timestamp of the last change in milliseconds since epoch.", + "format": "int64" + } + } + }, + "ListPopulationClause": { + "id": "ListPopulationClause", + "type": "object", + "description": "A group clause made up of list population terms representing constraints joined by ORs.", + "properties": { + "terms": { + "type": "array", + "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", + "items": { + "$ref": "ListPopulationTerm" + } + } + } + }, + "ListPopulationRule": { + "id": "ListPopulationRule", + "type": "object", + "description": "Remarketing List Population Rule.", + "properties": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID associated with this rule. This field can be left blank.", + "format": "int64" + }, + "floodlightActivityName": { + "type": "string", + "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field." + }, + "listPopulationClauses": { + "type": "array", + "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", + "items": { + "$ref": "ListPopulationClause" + } + } + } + }, + "ListPopulationTerm": { + "id": "ListPopulationTerm", + "type": "object", + "description": "Remarketing List Population Rule Term.", + "properties": { + "contains": { + "type": "boolean", + "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default." + }, + "negation": { + "type": "boolean", + "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." + }, + "operator": { + "type": "string", + "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "enum": [ + "NUM_EQUALS", + "NUM_GREATER_THAN", + "NUM_GREATER_THAN_EQUAL", + "NUM_LESS_THAN", + "NUM_LESS_THAN_EQUAL", + "STRING_CONTAINS", + "STRING_EQUALS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + }, + "remarketingListId": { + "type": "string", + "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", + "enum": [ + "CUSTOM_VARIABLE_TERM", + "LIST_MEMBERSHIP_TERM", + "REFERRER_TERM" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." + }, + "variableFriendlyName": { + "type": "string", + "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM." + }, + "variableName": { + "type": "string", + "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM." + } + } + }, + "ListTargetingExpression": { + "id": "ListTargetingExpression", + "type": "object", + "description": "Remarketing List Targeting Expression.", + "properties": { + "expression": { + "type": "string", + "description": "Expression describing which lists are being targeted by the ad." + } + } + }, + "LookbackConfiguration": { + "id": "LookbackConfiguration", + "type": "object", + "description": "Lookback configuration settings.", + "properties": { + "clickDuration": { + "type": "integer", + "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.", + "format": "int32" + }, + "postImpressionActivitiesDuration": { + "type": "integer", + "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.", + "format": "int32" + } + } + }, + "Metric": { + "id": "Metric", + "type": "object", + "description": "Represents a metric.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#metric.", + "default": "dfareporting#metric" + }, + "name": { + "type": "string", + "description": "The metric name, e.g. dfa:impressions" + } + } + }, + "Metro": { + "id": "Metro", + "type": "object", + "description": "Contains information about a metro region that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this metro region belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this metro region belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this metro region.", + "format": "int64" + }, + "dmaId": { + "type": "string", + "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", + "default": "dfareporting#metro" + }, + "metroCode": { + "type": "string", + "description": "Metro code of this metro region. This is equivalent to dma_id." + }, + "name": { + "type": "string", + "description": "Name of this metro region." + } + } + }, + "MetrosListResponse": { + "id": "MetrosListResponse", + "type": "object", + "description": "Metro List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", + "default": "dfareporting#metrosListResponse" + }, + "metros": { + "type": "array", + "description": "Metro collection.", + "items": { + "$ref": "Metro" + } + } + } + }, + "MobileCarrier": { + "id": "MobileCarrier", + "type": "object", + "description": "Contains information about a mobile carrier that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this mobile carrier belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this mobile carrier belongs.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this mobile carrier.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", + "default": "dfareporting#mobileCarrier" + }, + "name": { + "type": "string", + "description": "Name of this mobile carrier." + } + } + }, + "MobileCarriersListResponse": { + "id": "MobileCarriersListResponse", + "type": "object", + "description": "Mobile Carrier List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", + "default": "dfareporting#mobileCarriersListResponse" + }, + "mobileCarriers": { + "type": "array", + "description": "Mobile carrier collection.", + "items": { + "$ref": "MobileCarrier" + } + } + } + }, + "ObjectFilter": { + "id": "ObjectFilter", + "type": "object", + "description": "Object Filter.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", + "default": "dfareporting#objectFilter" + }, + "objectIds": { + "type": "array", + "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", + "items": { + "type": "string", + "format": "int64" + } + }, + "status": { + "type": "string", + "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", + "enum": [ + "ALL", + "ASSIGNED", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "OffsetPosition": { + "id": "OffsetPosition", + "type": "object", + "description": "Offset Position.", + "properties": { + "left": { + "type": "integer", + "description": "Offset distance from left side of an asset or a window.", + "format": "int32" + }, + "top": { + "type": "integer", + "description": "Offset distance from top side of an asset or a window.", + "format": "int32" + } + } + }, + "OmnitureSettings": { + "id": "OmnitureSettings", + "type": "object", + "description": "Omniture Integration Settings.", + "properties": { + "omnitureCostDataEnabled": { + "type": "boolean", + "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true." + }, + "omnitureIntegrationEnabled": { + "type": "boolean", + "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled." + } + } + }, + "OperatingSystem": { + "id": "OperatingSystem", + "type": "object", + "description": "Contains information about an operating system that can be targeted by ads.", + "properties": { + "dartId": { + "type": "string", + "description": "DART ID of this operating system. This is the ID used for targeting.", + "format": "int64" + }, + "desktop": { + "type": "boolean", + "description": "Whether this operating system is for desktop." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", + "default": "dfareporting#operatingSystem" + }, + "mobile": { + "type": "boolean", + "description": "Whether this operating system is for mobile." + }, + "name": { + "type": "string", + "description": "Name of this operating system." + } + } + }, + "OperatingSystemVersion": { + "id": "OperatingSystemVersion", + "type": "object", + "description": "Contains information about a particular version of an operating system that can be targeted by ads.", + "properties": { + "id": { + "type": "string", + "description": "ID of this operating system version.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", + "default": "dfareporting#operatingSystemVersion" + }, + "majorVersion": { + "type": "string", + "description": "Major version (leftmost number) of this operating system version." + }, + "minorVersion": { + "type": "string", + "description": "Minor version (number after the first dot) of this operating system version." + }, + "name": { + "type": "string", + "description": "Name of this operating system version." + }, + "operatingSystem": { + "$ref": "OperatingSystem", + "description": "Operating system of this operating system version." + } + } + }, + "OperatingSystemVersionsListResponse": { + "id": "OperatingSystemVersionsListResponse", + "type": "object", + "description": "Operating System Version List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", + "default": "dfareporting#operatingSystemVersionsListResponse" + }, + "operatingSystemVersions": { + "type": "array", + "description": "Operating system version collection.", + "items": { + "$ref": "OperatingSystemVersion" + } + } + } + }, + "OperatingSystemsListResponse": { + "id": "OperatingSystemsListResponse", + "type": "object", + "description": "Operating System List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", + "default": "dfareporting#operatingSystemsListResponse" + }, + "operatingSystems": { + "type": "array", + "description": "Operating system collection.", + "items": { + "$ref": "OperatingSystem" + } + } + } + }, + "OptimizationActivity": { + "id": "OptimizationActivity", + "type": "object", + "description": "Creative optimization activity.", + "properties": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID of this optimization activity. This is a required field.", + "format": "int64" + }, + "floodlightActivityIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." + }, + "weight": { + "type": "integer", + "description": "Weight associated with this optimization. Must be greater than 1. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities.", + "format": "int32" + } + } + }, + "Order": { + "id": "Order", + "type": "object", + "description": "Describes properties of a DoubleClick Planning order.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this order.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this order.", + "format": "int64" + }, + "approverUserProfileIds": { + "type": "array", + "description": "IDs for users that have to approve documents created for this order.", + "items": { + "type": "string", + "format": "int64" + } + }, + "buyerInvoiceId": { + "type": "string", + "description": "Buyer invoice ID associated with this order." + }, + "buyerOrganizationName": { + "type": "string", + "description": "Name of the buyer organization." + }, + "comments": { + "type": "string", + "description": "Comments in this order." + }, + "contacts": { + "type": "array", + "description": "Contacts for this order.", + "items": { + "$ref": "OrderContact" + } + }, + "id": { + "type": "string", + "description": "ID of this order. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", + "default": "dfareporting#order" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this order." + }, + "name": { + "type": "string", + "description": "Name of this order." + }, + "notes": { + "type": "string", + "description": "Notes of this order." + }, + "planningTermId": { + "type": "string", + "description": "ID of the terms and conditions template used in this order.", + "format": "int64" + }, + "projectId": { + "type": "string", + "description": "Project ID of this order.", + "format": "int64" + }, + "sellerOrderId": { + "type": "string", + "description": "Seller order ID associated with this order." + }, + "sellerOrganizationName": { + "type": "string", + "description": "Name of the seller organization." + }, + "siteId": { + "type": "array", + "description": "Site IDs this order is associated with.", + "items": { + "type": "string", + "format": "int64" + } + }, + "siteNames": { + "type": "array", + "description": "Free-form site names this order is associated with.", + "items": { + "type": "string" + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this order.", + "format": "int64" + }, + "termsAndConditions": { + "type": "string", + "description": "Terms and conditions of this order." + } + } + }, + "OrderContact": { + "id": "OrderContact", + "type": "object", + "description": "Contact of an order.", + "properties": { + "contactInfo": { + "type": "string", + "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID." + }, + "contactName": { + "type": "string", + "description": "Name of this contact." + }, + "contactTitle": { + "type": "string", + "description": "Title of this contact." + }, + "contactType": { + "type": "string", + "description": "Type of this contact.", + "enum": [ + "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", + "PLANNING_ORDER_CONTACT_BUYER_CONTACT", + "PLANNING_ORDER_CONTACT_SELLER_CONTACT" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "signatureUserProfileId": { + "type": "string", + "description": "ID of the user profile containing the signature that will be embedded into order documents.", + "format": "int64" + } + } + }, + "OrderDocument": { + "id": "OrderDocument", + "type": "object", + "description": "Contains properties of a DoubleClick Planning order document.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this order document.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this order document.", + "format": "int64" + }, + "amendedOrderDocumentId": { + "type": "string", + "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", + "format": "int64" + }, + "approvedByUserProfileIds": { + "type": "array", + "description": "IDs of users who have approved this order document.", + "items": { + "type": "string", + "format": "int64" + } + }, + "cancelled": { + "type": "boolean", + "description": "Whether this order document is cancelled." + }, + "createdInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this order document." + }, + "effectiveDate": { + "type": "string", + "description": "Effective date of this order document.", + "format": "date" + }, + "id": { + "type": "string", + "description": "ID of this order document.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", + "default": "dfareporting#orderDocument" + }, + "lastSentRecipients": { + "type": "array", + "description": "List of email addresses that received the last sent document.", + "items": { + "type": "string" + } + }, + "lastSentTime": { + "type": "string", + "description": "Timestamp of the last email sent with this order document.", + "format": "date-time" + }, + "orderId": { + "type": "string", + "description": "ID of the order from which this order document is created.", + "format": "int64" + }, + "projectId": { + "type": "string", + "description": "Project ID of this order document.", + "format": "int64" + }, + "signed": { + "type": "boolean", + "description": "Whether this order document has been signed." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this order document.", + "format": "int64" + }, + "title": { + "type": "string", + "description": "Title of this order document." + }, + "type": { + "type": "string", + "description": "Type of this order document", + "enum": [ + "PLANNING_ORDER_TYPE_CHANGE_ORDER", + "PLANNING_ORDER_TYPE_INSERTION_ORDER" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "OrderDocumentsListResponse": { + "id": "OrderDocumentsListResponse", + "type": "object", + "description": "Order document List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", + "default": "dfareporting#orderDocumentsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "orderDocuments": { + "type": "array", + "description": "Order document collection", + "items": { + "$ref": "OrderDocument" + } + } + } + }, + "OrdersListResponse": { + "id": "OrdersListResponse", + "type": "object", + "description": "Order List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", + "default": "dfareporting#ordersListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "orders": { + "type": "array", + "description": "Order collection.", + "items": { + "$ref": "Order" + } + } + } + }, + "PathToConversionReportCompatibleFields": { + "id": "PathToConversionReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "conversionDimensions": { + "type": "array", + "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "customFloodlightVariables": { + "type": "array", + "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", + "default": "dfareporting#pathToConversionReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "perInteractionDimensions": { + "type": "array", + "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + } + } + }, + "Placement": { + "id": "Placement", + "type": "object", + "description": "Contains properties of a placement.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement. This field can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this placement. This field can be left blank.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this placement is archived." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this placement. This field is a required field on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "comment": { + "type": "string", + "description": "Comments for this placement." + }, + "compatibility": { + "type": "string", + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "contentCategoryId": { + "type": "string", + "description": "ID of the content category assigned to this placement.", + "format": "int64" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement. This is a read-only field." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "type": "string", + "description": "External ID for this placement." + }, + "id": { + "type": "string", + "description": "ID of this placement. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." + }, + "keyName": { + "type": "string", + "description": "Key name of this placement. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", + "default": "dfareporting#placement" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this placement." + }, + "name": { + "type": "string", + "description": "Name of this placement.This is a required field and must be less than 256 characters long." + }, + "paymentApproved": { + "type": "boolean", + "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements." + }, + "paymentSource": { + "type": "string", + "description": "Payment source for this placement. This is a required field that is read-only after insertion.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "placementGroupId": { + "type": "string", + "description": "ID of this placement's group, if applicable.", + "format": "int64" + }, + "placementGroupIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." + }, + "placementStrategyId": { + "type": "string", + "description": "ID of the placement strategy assigned to this placement.", + "format": "int64" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." + }, + "primary": { + "type": "boolean", + "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement." + }, + "publisherUpdateInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the last publisher update. This is a read-only field." + }, + "siteId": { + "type": "string", + "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "size": { + "$ref": "Size", + "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether creatives assigned to this placement must be SSL-compliant." + }, + "status": { + "type": "string", + "description": "Third-party placement status.", + "enum": [ + "ACKNOWLEDGE_ACCEPTANCE", + "ACKNOWLEDGE_REJECTION", + "DRAFT", + "PAYMENT_ACCEPTED", + "PAYMENT_REJECTED", + "PENDING_REVIEW" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this placement. This field can be left blank.", + "format": "int64" + }, + "tagFormats": { + "type": "array", + "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", + "items": { + "type": "string", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Tag settings for this placement." + } + } + }, + "PlacementAssignment": { + "id": "PlacementAssignment", + "type": "object", + "description": "Placement Assignment.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation." + }, + "placementId": { + "type": "string", + "description": "ID of the placement to be assigned. This is a required field.", + "format": "int64" + }, + "placementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated." + } + } + }, + "PlacementGroup": { + "id": "PlacementGroup", + "type": "object", + "description": "Contains properties of a package or roadblock.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this placement group. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this placement group is archived." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this placement group. This field is required on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "childPlacementIds": { + "type": "array", + "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", + "items": { + "type": "string", + "format": "int64" + } + }, + "comment": { + "type": "string", + "description": "Comments for this placement group." + }, + "contentCategoryId": { + "type": "string", + "description": "ID of the content category assigned to this placement group.", + "format": "int64" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement group. This is a read-only field." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "type": "string", + "description": "External ID for this placement." + }, + "id": { + "type": "string", + "description": "ID of this placement group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", + "default": "dfareporting#placementGroup" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement group. This is a read-only field." + }, + "name": { + "type": "string", + "description": "Name of this placement group. This is a required field and must be less than 256 characters long." + }, + "placementGroupType": { + "type": "string", + "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "placementStrategyId": { + "type": "string", + "description": "ID of the placement strategy assigned to this placement group.", + "format": "int64" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement group. This field is required on insertion." + }, + "primaryPlacementId": { + "type": "string", + "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", + "format": "int64" + }, + "primaryPlacementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." + }, + "siteId": { + "type": "string", + "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "PlacementGroupsListResponse": { + "id": "PlacementGroupsListResponse", + "type": "object", + "description": "Placement Group List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", + "default": "dfareporting#placementGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placementGroups": { + "type": "array", + "description": "Placement group collection.", + "items": { + "$ref": "PlacementGroup" + } + } + } + }, + "PlacementStrategiesListResponse": { + "id": "PlacementStrategiesListResponse", + "type": "object", + "description": "Placement Strategy List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", + "default": "dfareporting#placementStrategiesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placementStrategies": { + "type": "array", + "description": "Placement strategy collection.", + "items": { + "$ref": "PlacementStrategy" + } + } + } + }, + "PlacementStrategy": { + "id": "PlacementStrategy", + "type": "object", + "description": "Contains properties of a placement strategy.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this placement strategy. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", + "default": "dfareporting#placementStrategy" + }, + "name": { + "type": "string", + "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account." + } + } + }, + "PlacementTag": { + "id": "PlacementTag", + "type": "object", + "description": "Placement Tag", + "properties": { + "placementId": { + "type": "string", + "description": "Placement ID", + "format": "int64" + }, + "tagDatas": { + "type": "array", + "description": "Tags generated for this placement.", + "items": { + "$ref": "TagData" + } + } + } + }, + "PlacementsGenerateTagsResponse": { + "id": "PlacementsGenerateTagsResponse", + "type": "object", + "description": "Placement GenerateTags Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", + "default": "dfareporting#placementsGenerateTagsResponse" + }, + "placementTags": { + "type": "array", + "description": "Set of generated tags for the specified placements.", + "items": { + "$ref": "PlacementTag" + } + } + } + }, + "PlacementsListResponse": { + "id": "PlacementsListResponse", + "type": "object", + "description": "Placement List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", + "default": "dfareporting#placementsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placements": { + "type": "array", + "description": "Placement collection.", + "items": { + "$ref": "Placement" + } + } + } + }, + "PlatformType": { + "id": "PlatformType", + "type": "object", + "description": "Contains information about a platform type that can be targeted by ads.", + "properties": { + "id": { + "type": "string", + "description": "ID of this platform type.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", + "default": "dfareporting#platformType" + }, + "name": { + "type": "string", + "description": "Name of this platform type." + } + } + }, + "PlatformTypesListResponse": { + "id": "PlatformTypesListResponse", + "type": "object", + "description": "Platform Type List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", + "default": "dfareporting#platformTypesListResponse" + }, + "platformTypes": { + "type": "array", + "description": "Platform type collection.", + "items": { + "$ref": "PlatformType" + } + } + } + }, + "PopupWindowProperties": { + "id": "PopupWindowProperties", + "type": "object", + "description": "Popup Window Properties.", + "properties": { + "dimension": { + "$ref": "Size", + "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." + }, + "positionType": { + "type": "string", + "description": "Popup window position either centered or at specific coordinate.", + "enum": [ + "CENTER", + "COORDINATES" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "showAddressBar": { + "type": "boolean", + "description": "Whether to display the browser address bar." + }, + "showMenuBar": { + "type": "boolean", + "description": "Whether to display the browser menu bar." + }, + "showScrollBar": { + "type": "boolean", + "description": "Whether to display the browser scroll bar." + }, + "showStatusBar": { + "type": "boolean", + "description": "Whether to display the browser status bar." + }, + "showToolBar": { + "type": "boolean", + "description": "Whether to display the browser tool bar." + }, + "title": { + "type": "string", + "description": "Title of popup window." + } + } + }, + "PostalCode": { + "id": "PostalCode", + "type": "object", + "description": "Contains information about a postal code that can be targeted by ads.", + "properties": { + "code": { + "type": "string", + "description": "Postal code. This is equivalent to the id field." + }, + "countryCode": { + "type": "string", + "description": "Country code of the country to which this postal code belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this postal code belongs.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this postal code." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", + "default": "dfareporting#postalCode" + } + } + }, + "PostalCodesListResponse": { + "id": "PostalCodesListResponse", + "type": "object", + "description": "Postal Code List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", + "default": "dfareporting#postalCodesListResponse" + }, + "postalCodes": { + "type": "array", + "description": "Postal code collection.", + "items": { + "$ref": "PostalCode" + } + } + } + }, + "Pricing": { + "id": "Pricing", + "type": "object", + "description": "Pricing Information", + "properties": { + "capCostType": { + "type": "string", + "description": "Cap cost type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", + "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", + "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "endDate": { + "type": "string", + "description": "End date of this inventory item.", + "format": "date" + }, + "flights": { + "type": "array", + "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", + "items": { + "$ref": "Flight" + } + }, + "groupType": { + "type": "string", + "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", + "enum": [ + "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", + "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "pricingType": { + "type": "string", + "description": "Pricing type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_CPA", + "PLANNING_PLACEMENT_PRICING_TYPE_CPC", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", + "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Start date of this inventory item.", + "format": "date" + } + } + }, + "PricingSchedule": { + "id": "PricingSchedule", + "type": "object", + "description": "Pricing Schedule", + "properties": { + "capCostOption": { + "type": "string", + "description": "Placement cap cost option.", + "enum": [ + "CAP_COST_CUMULATIVE", + "CAP_COST_MONTHLY", + "CAP_COST_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "disregardOverdelivery": { + "type": "boolean", + "description": "Whether cap costs are ignored by ad serving." + }, + "endDate": { + "type": "string", + "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date" + }, + "flighted": { + "type": "boolean", + "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically." + }, + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", + "format": "int64" + }, + "pricingPeriods": { + "type": "array", + "description": "Pricing periods for this placement.", + "items": { + "$ref": "PricingSchedulePricingPeriod" + } + }, + "pricingType": { + "type": "string", + "description": "Placement pricing type. This field is required on insertion.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date" + }, + "testingStartDate": { + "type": "string", + "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date" + } + } + }, + "PricingSchedulePricingPeriod": { + "id": "PricingSchedulePricingPeriod", + "type": "object", + "description": "Pricing Period", + "properties": { + "endDate": { + "type": "string", + "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", + "format": "date" + }, + "pricingComment": { + "type": "string", + "description": "Comments for this pricing period." + }, + "rateOrCostNanos": { + "type": "string", + "description": "Rate or cost of this pricing period.", + "format": "int64" + }, + "startDate": { + "type": "string", + "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date" + }, + "units": { + "type": "string", + "description": "Units of this pricing period.", + "format": "int64" + } + } + }, + "Project": { + "id": "Project", + "type": "object", + "description": "Contains properties of a DoubleClick Planning project.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this project.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this project.", + "format": "int64" + }, + "audienceAgeGroup": { + "type": "string", + "description": "Audience age group of this project.", + "enum": [ + "PLANNING_AUDIENCE_AGE_18_24", + "PLANNING_AUDIENCE_AGE_25_34", + "PLANNING_AUDIENCE_AGE_35_44", + "PLANNING_AUDIENCE_AGE_45_54", + "PLANNING_AUDIENCE_AGE_55_64", + "PLANNING_AUDIENCE_AGE_65_OR_MORE", + "PLANNING_AUDIENCE_AGE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + }, + "audienceGender": { + "type": "string", + "description": "Audience gender of this project.", + "enum": [ + "PLANNING_AUDIENCE_GENDER_FEMALE", + "PLANNING_AUDIENCE_GENDER_MALE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "budget": { + "type": "string", + "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", + "format": "int64" + }, + "clientBillingCode": { + "type": "string", + "description": "Client billing code of this project." + }, + "clientName": { + "type": "string", + "description": "Name of the project client." + }, + "endDate": { + "type": "string", + "description": "End date of the project.", + "format": "date" + }, + "id": { + "type": "string", + "description": "ID of this project. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", + "default": "dfareporting#project" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this project." + }, + "name": { + "type": "string", + "description": "Name of this project." + }, + "overview": { + "type": "string", + "description": "Overview of this project." + }, + "startDate": { + "type": "string", + "description": "Start date of the project.", + "format": "date" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this project.", + "format": "int64" + }, + "targetClicks": { + "type": "string", + "description": "Number of clicks that the advertiser is targeting.", + "format": "int64" + }, + "targetConversions": { + "type": "string", + "description": "Number of conversions that the advertiser is targeting.", + "format": "int64" + }, + "targetCpaNanos": { + "type": "string", + "description": "CPA that the advertiser is targeting.", + "format": "int64" + }, + "targetCpcNanos": { + "type": "string", + "description": "CPC that the advertiser is targeting.", + "format": "int64" + }, + "targetCpmNanos": { + "type": "string", + "description": "CPM that the advertiser is targeting.", + "format": "int64" + }, + "targetImpressions": { + "type": "string", + "description": "Number of impressions that the advertiser is targeting.", + "format": "int64" + } + } + }, + "ProjectsListResponse": { + "id": "ProjectsListResponse", + "type": "object", + "description": "Project List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", + "default": "dfareporting#projectsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "projects": { + "type": "array", + "description": "Project collection.", + "items": { + "$ref": "Project" + } + } + } + }, + "ReachReportCompatibleFields": { + "id": "ReachReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", + "default": "dfareporting#reachReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "pivotedActivityMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "reachByFrequencyMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "Recipient": { + "id": "Recipient", + "type": "object", + "description": "Represents a recipient.", + "properties": { + "deliveryType": { + "type": "string", + "description": "The delivery type for the recipient.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "email": { + "type": "string", + "description": "The email address of the recipient.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#recipient.", + "default": "dfareporting#recipient" + } + } + }, + "Region": { + "id": "Region", + "type": "object", + "description": "Contains information about a region that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this region belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this region belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this region.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", + "default": "dfareporting#region" + }, + "name": { + "type": "string", + "description": "Name of this region." + }, + "regionCode": { + "type": "string", + "description": "Region code." + } + } + }, + "RegionsListResponse": { + "id": "RegionsListResponse", + "type": "object", + "description": "Region List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", + "default": "dfareporting#regionsListResponse" + }, + "regions": { + "type": "array", + "description": "Region collection.", + "items": { + "$ref": "Region" + } + } + } + }, + "RemarketingList": { + "id": "RemarketingList", + "type": "object", + "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this remarketing list is active." + }, + "advertiserId": { + "type": "string", + "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "description": { + "type": "string", + "description": "Remarketing list description." + }, + "id": { + "type": "string", + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", + "default": "dfareporting#remarketingList" + }, + "lifeSpan": { + "type": "string", + "description": "Number of days that a user should remain in the remarketing list without an impression.", + "format": "int64" + }, + "listPopulationRule": { + "$ref": "ListPopulationRule", + "description": "Rule used to populate the remarketing list with users." + }, + "listSize": { + "type": "string", + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64" + }, + "listSource": { + "type": "string", + "description": "Product from which this remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + } + } + }, + "RemarketingListShare": { + "id": "RemarketingListShare", + "type": "object", + "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", + "default": "dfareporting#remarketingListShare" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64" + }, + "sharedAccountIds": { + "type": "array", + "description": "Accounts that the remarketing list is shared with.", + "items": { + "type": "string", + "format": "int64" + } + }, + "sharedAdvertiserIds": { + "type": "array", + "description": "Advertisers that the remarketing list is shared with.", + "items": { + "type": "string", + "format": "int64" + } + } + } + }, + "RemarketingListsListResponse": { + "id": "RemarketingListsListResponse", + "type": "object", + "description": "Remarketing list response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", + "default": "dfareporting#remarketingListsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "remarketingLists": { + "type": "array", + "description": "Remarketing list collection.", + "items": { + "$ref": "RemarketingList" + } + } + } + }, + "Report": { + "id": "Report", + "type": "object", + "description": "Represents a Report resource.", + "properties": { + "accountId": { + "type": "string", + "description": "The account ID to which this report belongs.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "criteria": { + "type": "object", + "description": "The report criteria for a report of type \"STANDARD\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which this report should be run." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of standard dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + } + } + }, + "crossDimensionReachCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimension": { + "type": "string", + "description": "The dimension option.", + "enum": [ + "ADVERTISER", + "CAMPAIGN", + "SITE_BY_ADVERTISER", + "SITE_BY_CAMPAIGN" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.", + "items": { + "$ref": "DimensionValue" + } + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "overlapMetricNames": { + "type": "array", + "description": "The list of names of overlap metrics the report should include.", + "items": { + "type": "string" + } + }, + "pivoted": { + "type": "boolean", + "description": "Whether the report is pivoted or not. Defaults to true." + } + } + }, + "delivery": { + "type": "object", + "description": "The report's email delivery settings.", + "properties": { + "emailOwner": { + "type": "boolean", + "description": "Whether the report should be emailed to the report owner." + }, + "emailOwnerDeliveryType": { + "type": "string", + "description": "The type of delivery for the owner to receive, if enabled.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "message": { + "type": "string", + "description": "The message to be sent with each email." + }, + "recipients": { + "type": "array", + "description": "The list of recipients to which to email the report.", + "items": { + "$ref": "Recipient" + } + } + } + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "fileName": { + "type": "string", + "description": "The filename used when generating report files for this report." + }, + "floodlightCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"FLOODLIGHT\".", + "properties": { + "customRichMediaEvents": { + "type": "array", + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "reportProperties": { + "type": "object", + "description": "The properties of the report.", + "properties": { + "includeAttributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no cookie, but do have an exposure path." + }, + "includeUnattributedCookieConversions": { + "type": "boolean", + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + }, + "includeUnattributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + } + } + } + } + }, + "format": { + "type": "string", + "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "The unique ID identifying this report resource.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#report.", + "default": "dfareporting#report" + }, + "lastModifiedTime": { + "type": "string", + "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", + "format": "uint64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "name": { + "type": "string", + "description": "The name of the report.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "ownerProfileId": { + "type": "string", + "description": "The user profile id of the owner of this report.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "pathToConversionCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "activityFilters": { + "type": "array", + "description": "The list of 'dfa:activity' values to filter on.", + "items": { + "$ref": "DimensionValue" + } + }, + "conversionDimensions": { + "type": "array", + "description": "The list of conversion dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "customFloodlightVariables": { + "type": "array", + "description": "The list of custom floodlight variables the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "customRichMediaEvents": { + "type": "array", + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "perInteractionDimensions": { + "type": "array", + "description": "The list of per interaction dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "reportProperties": { + "type": "object", + "description": "The properties of the report.", + "properties": { + "clicksLookbackWindow": { + "type": "integer", + "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32" + }, + "impressionsLookbackWindow": { + "type": "integer", + "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32" + }, + "includeAttributedIPConversions": { + "type": "boolean", + "description": "Deprecated: has no effect." + }, + "includeUnattributedCookieConversions": { + "type": "boolean", + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + }, + "includeUnattributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + }, + "maximumClickInteractions": { + "type": "integer", + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32" + }, + "maximumImpressionInteractions": { + "type": "integer", + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32" + }, + "maximumInteractionGap": { + "type": "integer", + "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", + "format": "int32" + }, + "pivotOnInteractionPath": { + "type": "boolean", + "description": "Enable pivoting on interaction path." + } + } + } + } + }, + "reachCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"REACH\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "enableAllDimensionCombinations": { + "type": "boolean", + "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last three months." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "reachByFrequencyMetricNames": { + "type": "array", + "description": "The list of names of Reach By Frequency metrics the report should include.", + "items": { + "type": "string" + } + } + } + }, + "schedule": { + "type": "object", + "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", + "properties": { + "active": { + "type": "boolean", + "description": "Whether the schedule is active or not. Must be set to either true or false.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "every": { + "type": "integer", + "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", + "format": "int32" + }, + "expirationDate": { + "type": "string", + "description": "The expiration date when the scheduled report stops running.", + "format": "date", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "repeats": { + "type": "string", + "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "repeatsOnWeekDays": { + "type": "array", + "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", + "items": { + "type": "string", + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "runsOnDayOfMonth": { + "type": "string", + "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", + "enum": [ + "DAY_OF_MONTH", + "WEEK_OF_MONTH" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Start date of date range for which scheduled reports should be run.", + "format": "date", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + } + } + }, + "subAccountId": { + "type": "string", + "description": "The subaccount ID to which this report belongs if applicable.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "The type of the report.", + "enum": [ + "CROSS_DIMENSION_REACH", + "FLOODLIGHT", + "PATH_TO_CONVERSION", + "REACH", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + } + } + }, + "ReportCompatibleFields": { + "id": "ReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", + "default": "dfareporting#reportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "pivotedActivityMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "ReportList": { + "id": "ReportList", + "type": "object", + "description": "Represents the list of reports.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The reports returned in this response.", + "items": { + "$ref": "Report" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#reportList.", + "default": "dfareporting#reportList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "ReportsConfiguration": { + "id": "ReportsConfiguration", + "type": "object", + "description": "Reporting Configuration", + "properties": { + "exposureToConversionEnabled": { + "type": "boolean", + "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Default lookback windows for new advertisers in this account." + }, + "reportGenerationTimeZoneId": { + "type": "string", + "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", + "format": "int64" + } + } + }, + "RichMediaExitOverride": { + "id": "RichMediaExitOverride", + "type": "object", + "description": "Rich Media Exit Override.", + "properties": { + "customExitUrl": { + "type": "string", + "description": "Click-through URL to override the default exit URL. Applicable if the useCustomExitUrl field is set to true." + }, + "exitId": { + "type": "string", + "description": "ID for the override to refer to a specific exit in the creative.", + "format": "int64" + }, + "useCustomExitUrl": { + "type": "boolean", + "description": "Whether to use the custom exit URL." + } + } + }, + "Site": { + "id": "Site", + "type": "object", + "description": "Contains properties of a site.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this site. This is a read-only field that can be left blank.", + "format": "int64" + }, + "approved": { + "type": "boolean", + "description": "Whether this site is approved." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this site. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." + }, + "keyName": { + "type": "string", + "description": "Key name of this site. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", + "default": "dfareporting#site" + }, + "name": { + "type": "string", + "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account." + }, + "siteContacts": { + "type": "array", + "description": "Site contacts.", + "items": { + "$ref": "SiteContact" + } + }, + "siteSettings": { + "$ref": "SiteSettings", + "description": "Site-wide settings." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "SiteContact": { + "id": "SiteContact", + "type": "object", + "description": "Site Contact", + "properties": { + "address": { + "type": "string", + "description": "Address of this site contact." + }, + "contactType": { + "type": "string", + "description": "Site contact type.", + "enum": [ + "SALES_PERSON", + "TRAFFICKER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "email": { + "type": "string", + "description": "Email address of this site contact. This is a required field." + }, + "firstName": { + "type": "string", + "description": "First name of this site contact." + }, + "id": { + "type": "string", + "description": "ID of this site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "lastName": { + "type": "string", + "description": "Last name of this site contact." + }, + "phone": { + "type": "string", + "description": "Primary phone number of this site contact." + }, + "title": { + "type": "string", + "description": "Title or designation of this site contact." + } + } + }, + "SiteSettings": { + "id": "SiteSettings", + "type": "object", + "description": "Site Settings", + "properties": { + "activeViewOptOut": { + "type": "boolean", + "description": "Whether active view creatives are disabled for this site." + }, + "creativeSettings": { + "$ref": "CreativeSettings", + "description": "Site-wide creative settings." + }, + "disableBrandSafeAds": { + "type": "boolean", + "description": "Whether brand safe ads are disabled for this site." + }, + "disableNewCookie": { + "type": "boolean", + "description": "Whether new cookies are disabled for this site." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this site." + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "videoActiveViewOptOut": { + "type": "boolean", + "description": "Whether Verification and ActiveView are disabled for in-stream video creatives on this site. The same setting videoActiveViewOptOut exists on the directory site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView." + } + } + }, + "SitesListResponse": { + "id": "SitesListResponse", + "type": "object", + "description": "Site List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", + "default": "dfareporting#sitesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "sites": { + "type": "array", + "description": "Site collection.", + "items": { + "$ref": "Site" + } + } + } + }, + "Size": { + "id": "Size", + "type": "object", + "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", + "properties": { + "height": { + "type": "integer", + "description": "Height of this size.", + "format": "int32" + }, + "iab": { + "type": "boolean", + "description": "IAB standard size. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this size. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", + "default": "dfareporting#size" + }, + "width": { + "type": "integer", + "description": "Width of this size.", + "format": "int32" + } + } + }, + "SizesListResponse": { + "id": "SizesListResponse", + "type": "object", + "description": "Size List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", + "default": "dfareporting#sizesListResponse" + }, + "sizes": { + "type": "array", + "description": "Size collection.", + "items": { + "$ref": "Size" + } + } + } + }, + "SortedDimension": { + "id": "SortedDimension", + "type": "object", + "description": "Represents a sorted dimension.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", + "default": "dfareporting#sortedDimension" + }, + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "sortOrder": { + "type": "string", + "description": "An optional sort order for the dimension column.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "Subaccount": { + "id": "Subaccount", + "type": "object", + "description": "Contains properties of a DCM subaccount.", + "properties": { + "accountId": { + "type": "string", + "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", + "format": "int64" + }, + "availablePermissionIds": { + "type": "array", + "description": "IDs of the available user role permissions for this subaccount.", + "items": { + "type": "string", + "format": "int64" + } + }, + "id": { + "type": "string", + "description": "ID of this subaccount. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", + "default": "dfareporting#subaccount" + }, + "name": { + "type": "string", + "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account." + } + } + }, + "SubaccountsListResponse": { + "id": "SubaccountsListResponse", + "type": "object", + "description": "Subaccount List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", + "default": "dfareporting#subaccountsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "subaccounts": { + "type": "array", + "description": "Subaccount collection.", + "items": { + "$ref": "Subaccount" + } + } + } + }, + "TagData": { + "id": "TagData", + "type": "object", + "description": "Placement Tag Data", + "properties": { + "adId": { + "type": "string", + "description": "Ad associated with this placement tag.", + "format": "int64" + }, + "clickTag": { + "type": "string", + "description": "Tag string to record a click." + }, + "creativeId": { + "type": "string", + "description": "Creative associated with this placement tag.", + "format": "int64" + }, + "format": { + "type": "string", + "description": "TagData tag format of this tag.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "impressionTag": { + "type": "string", + "description": "Tag string for serving an ad." + } + } + }, + "TagSetting": { + "id": "TagSetting", + "type": "object", + "description": "Tag Settings", + "properties": { + "additionalKeyValues": { + "type": "string", + "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field." + }, + "includeClickThroughUrls": { + "type": "boolean", + "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements." + }, + "includeClickTracking": { + "type": "boolean", + "description": "Whether click-tracking string should be included in the tags." + }, + "keywordOption": { + "type": "string", + "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", + "enum": [ + "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", + "IGNORE", + "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "TagSettings": { + "id": "TagSettings", + "type": "object", + "description": "Dynamic and Image Tag Settings.", + "properties": { + "dynamicTagEnabled": { + "type": "boolean", + "description": "Whether dynamic floodlight tags are enabled." + }, + "imageTagEnabled": { + "type": "boolean", + "description": "Whether image tags are enabled." + } + } + }, + "TargetWindow": { + "id": "TargetWindow", + "type": "object", + "description": "Target Window.", + "properties": { + "customHtml": { + "type": "string", + "description": "User-entered value." + }, + "targetWindowOption": { + "type": "string", + "description": "Type of browser window for which the backup image of the flash creative can be displayed.", + "enum": [ + "CURRENT_WINDOW", + "CUSTOM", + "NEW_WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "TargetableRemarketingList": { + "id": "TargetableRemarketingList", + "type": "object", + "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this targetable remarketing list is active." + }, + "advertiserId": { + "type": "string", + "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser." + }, + "description": { + "type": "string", + "description": "Targetable remarketing list description." + }, + "id": { + "type": "string", + "description": "Targetable remarketing list ID.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", + "default": "dfareporting#targetableRemarketingList" + }, + "lifeSpan": { + "type": "string", + "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", + "format": "int64" + }, + "listSize": { + "type": "string", + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64" + }, + "listSource": { + "type": "string", + "description": "Product from which this targetable remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the targetable remarketing list. Is no greater than 128 characters long." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + } + } + }, + "TargetableRemarketingListsListResponse": { + "id": "TargetableRemarketingListsListResponse", + "type": "object", + "description": "Targetable remarketing list response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", + "default": "dfareporting#targetableRemarketingListsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "targetableRemarketingLists": { + "type": "array", + "description": "Targetable remarketing list collection.", + "items": { + "$ref": "TargetableRemarketingList" + } + } + } + }, + "TechnologyTargeting": { + "id": "TechnologyTargeting", + "type": "object", + "description": "Technology Targeting.", + "properties": { + "browsers": { + "type": "array", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Browser" + } + }, + "connectionTypes": { + "type": "array", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "ConnectionType" + } + }, + "mobileCarriers": { + "type": "array", + "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", + "items": { + "$ref": "MobileCarrier" + } + }, + "operatingSystemVersions": { + "type": "array", + "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", + "items": { + "$ref": "OperatingSystemVersion" + } + }, + "operatingSystems": { + "type": "array", + "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", + "items": { + "$ref": "OperatingSystem" + } + }, + "platformTypes": { + "type": "array", + "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "PlatformType" + } + } + } + }, + "ThirdPartyAuthenticationToken": { + "id": "ThirdPartyAuthenticationToken", + "type": "object", + "description": "Third Party Authentication Token", + "properties": { + "name": { + "type": "string", + "description": "Name of the third-party authentication token." + }, + "value": { + "type": "string", + "description": "Value of the third-party authentication token. This is a read-only, auto-generated field." + } + } + }, + "ThirdPartyTrackingUrl": { + "id": "ThirdPartyTrackingUrl", + "type": "object", + "description": "Third-party Tracking URL.", + "properties": { + "thirdPartyUrlType": { + "type": "string", + "description": "Third-party URL type for in-stream video creatives.", + "enum": [ + "CLICK_TRACKING", + "IMPRESSION", + "RICH_MEDIA_BACKUP_IMPRESSION", + "RICH_MEDIA_IMPRESSION", + "RICH_MEDIA_RM_IMPRESSION", + "SURVEY", + "VIDEO_COMPLETE", + "VIDEO_CUSTOM", + "VIDEO_FIRST_QUARTILE", + "VIDEO_FULLSCREEN", + "VIDEO_MIDPOINT", + "VIDEO_MUTE", + "VIDEO_PAUSE", + "VIDEO_PROGRESS", + "VIDEO_REWIND", + "VIDEO_SKIP", + "VIDEO_START", + "VIDEO_STOP", + "VIDEO_THIRD_QUARTILE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "url": { + "type": "string", + "description": "URL for the specified third-party URL type." + } + } + }, + "UserDefinedVariableConfiguration": { + "id": "UserDefinedVariableConfiguration", + "type": "object", + "description": "User Defined Variable configuration.", + "properties": { + "dataType": { + "type": "string", + "description": "Data type for the variable. This is a required field.", + "enum": [ + "NUMBER", + "STRING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "reportName": { + "type": "string", + "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\"." + }, + "variableType": { + "type": "string", + "description": "Variable name in the tag. This is a required field.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "UserProfile": { + "id": "UserProfile", + "type": "object", + "description": "Represents a UserProfile resource.", + "properties": { + "accountId": { + "type": "string", + "description": "The account ID to which this profile belongs.", + "format": "int64" + }, + "accountName": { + "type": "string", + "description": "The account name this profile belongs to." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#userProfile.", + "default": "dfareporting#userProfile" + }, + "profileId": { + "type": "string", + "description": "The unique ID of the user profile.", + "format": "int64" + }, + "subAccountId": { + "type": "string", + "description": "The sub account ID this profile belongs to if applicable.", + "format": "int64" + }, + "subAccountName": { + "type": "string", + "description": "The sub account name this profile belongs to if applicable." + }, + "userName": { + "type": "string", + "description": "The user name." + } + } + }, + "UserProfileList": { + "id": "UserProfileList", + "type": "object", + "description": "Represents the list of user profiles.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The user profiles returned in this response.", + "items": { + "$ref": "UserProfile" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#userProfileList.", + "default": "dfareporting#userProfileList" + } + } + }, + "UserRole": { + "id": "UserRole", + "type": "object", + "description": "Contains properties of auser role, which is used to manage user access.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this user role. This is a read-only field that can be left blank.", + "format": "int64" + }, + "defaultUserRole": { + "type": "boolean", + "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions." + }, + "id": { + "type": "string", + "description": "ID of this user role. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", + "default": "dfareporting#userRole" + }, + "name": { + "type": "string", + "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account." + }, + "parentUserRoleId": { + "type": "string", + "description": "ID of the user role that this user role is based on or copied from. This is a required field.", + "format": "int64" + }, + "permissions": { + "type": "array", + "description": "List of permissions associated with this user role.", + "items": { + "$ref": "UserRolePermission" + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "UserRolePermission": { + "id": "UserRolePermission", + "type": "object", + "description": "Contains properties of a user role permission.", + "properties": { + "availability": { + "type": "string", + "description": "Levels of availability for a user role permission.", + "enum": [ + "ACCOUNT_ALWAYS", + "ACCOUNT_BY_DEFAULT", + "NOT_AVAILABLE_BY_DEFAULT", + "SUBACCOUNT_AND_ACCOUNT_ALWAYS", + "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "id": { + "type": "string", + "description": "ID of this user role permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", + "default": "dfareporting#userRolePermission" + }, + "name": { + "type": "string", + "description": "Name of this user role permission." + }, + "permissionGroupId": { + "type": "string", + "description": "ID of the permission group that this user role permission belongs to.", + "format": "int64" + } + } + }, + "UserRolePermissionGroup": { + "id": "UserRolePermissionGroup", + "type": "object", + "description": "Represents a grouping of related user role permissions.", + "properties": { + "id": { + "type": "string", + "description": "ID of this user role permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", + "default": "dfareporting#userRolePermissionGroup" + }, + "name": { + "type": "string", + "description": "Name of this user role permission group." + } + } + }, + "UserRolePermissionGroupsListResponse": { + "id": "UserRolePermissionGroupsListResponse", + "type": "object", + "description": "User Role Permission Group List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", + "default": "dfareporting#userRolePermissionGroupsListResponse" + }, + "userRolePermissionGroups": { + "type": "array", + "description": "User role permission group collection.", + "items": { + "$ref": "UserRolePermissionGroup" + } + } + } + }, + "UserRolePermissionsListResponse": { + "id": "UserRolePermissionsListResponse", + "type": "object", + "description": "User Role Permission List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", + "default": "dfareporting#userRolePermissionsListResponse" + }, + "userRolePermissions": { + "type": "array", + "description": "User role permission collection.", + "items": { + "$ref": "UserRolePermission" + } + } + } + }, + "UserRolesListResponse": { + "id": "UserRolesListResponse", + "type": "object", + "description": "User Role List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", + "default": "dfareporting#userRolesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "userRoles": { + "type": "array", + "description": "User role collection.", + "items": { + "$ref": "UserRole" + } + } + } + } + }, + "resources": { + "accountActiveAdSummaries": { + "methods": { + "get": { + "id": "dfareporting.accountActiveAdSummaries.get", + "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", + "httpMethod": "GET", + "description": "Gets the account's active ad summary by account ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "summaryAccountId": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "summaryAccountId" + ], + "response": { + "$ref": "AccountActiveAdSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountPermissionGroups": { + "methods": { + "get": { + "id": "dfareporting.accountPermissionGroups.get", + "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", + "httpMethod": "GET", + "description": "Gets one account permission group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account permission group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountPermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountPermissionGroups.list", + "path": "userprofiles/{profileId}/accountPermissionGroups", + "httpMethod": "GET", + "description": "Retrieves the list of account permission groups.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountPermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountPermissions": { + "methods": { + "get": { + "id": "dfareporting.accountPermissions.get", + "path": "userprofiles/{profileId}/accountPermissions/{id}", + "httpMethod": "GET", + "description": "Gets one account permission by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account permission ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountPermissions.list", + "path": "userprofiles/{profileId}/accountPermissions", + "httpMethod": "GET", + "description": "Retrieves the list of account permissions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountPermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountUserProfiles": { + "methods": { + "get": { + "id": "dfareporting.accountUserProfiles.get", + "path": "userprofiles/{profileId}/accountUserProfiles/{id}", + "httpMethod": "GET", + "description": "Gets one account user profile by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.accountUserProfiles.insert", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "POST", + "description": "Inserts a new account user profile.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountUserProfiles.list", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "GET", + "description": "Retrieves a list of account user profiles, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active user profiles.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only user profiles with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only user profiles with the specified subaccount ID.", + "format": "int64", + "location": "query" + }, + "userRoleId": { + "type": "string", + "description": "Select only user profiles with the specified user role ID.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountUserProfilesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.accountUserProfiles.patch", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "PATCH", + "description": "Updates an existing account user profile. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "User profile ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.accountUserProfiles.update", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "PUT", + "description": "Updates an existing account user profile.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accounts": { + "methods": { + "get": { + "id": "dfareporting.accounts.get", + "path": "userprofiles/{profileId}/accounts/{id}", + "httpMethod": "GET", + "description": "Gets one account by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accounts.list", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "GET", + "description": "Retrieves the list of accounts, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only accounts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.accounts.patch", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "PATCH", + "description": "Updates an existing account. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.accounts.update", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "PUT", + "description": "Updates an existing account.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "ads": { + "methods": { + "get": { + "id": "dfareporting.ads.get", + "path": "userprofiles/{profileId}/ads/{id}", + "httpMethod": "GET", + "description": "Gets one ad by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Ad ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.ads.insert", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "POST", + "description": "Inserts a new ad.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.ads.list", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "GET", + "description": "Retrieves a list of ads, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active ads.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only ads with this advertiser ID.", + "format": "int64", + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived ads.", + "location": "query" + }, + "audienceSegmentIds": { + "type": "string", + "description": "Select only ads with these audience segment IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only ads with these campaign IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "compatibility": { + "type": "string", + "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "creativeIds": { + "type": "string", + "description": "Select only ads with these creative IDs assigned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeOptimizationConfigurationIds": { + "type": "string", + "description": "Select only ads with these creative optimization configuration IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeType": { + "type": "string", + "description": "Select only ads with the specified creativeType.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "dynamicClickTracker": { + "type": "boolean", + "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only ads with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "landingPageIds": { + "type": "string", + "description": "Select only ads with these landing page IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "overriddenEventTagId": { + "type": "string", + "description": "Select only ads with this event tag override ID.", + "format": "int64", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "placementIds": { + "type": "string", + "description": "Select only ads with these placement IDs assigned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListIds": { + "type": "string", + "description": "Select only ads whose list targeting expression use these remarketing list IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only ads with these size IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sslCompliant": { + "type": "boolean", + "description": "Select only ads that are SSL-compliant.", + "location": "query" + }, + "sslRequired": { + "type": "boolean", + "description": "Select only ads that require SSL.", + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only ads with these types.", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.ads.patch", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "PATCH", + "description": "Updates an existing ad. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Ad ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.ads.update", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "PUT", + "description": "Updates an existing ad.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "advertiserGroups": { + "methods": { + "delete": { + "id": "dfareporting.advertiserGroups.delete", + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing advertiser group.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.advertiserGroups.get", + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "httpMethod": "GET", + "description": "Gets one advertiser group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.advertiserGroups.insert", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "POST", + "description": "Inserts a new advertiser group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.advertiserGroups.list", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "GET", + "description": "Retrieves a list of advertiser groups, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only advertiser groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdvertiserGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.advertiserGroups.patch", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "PATCH", + "description": "Updates an existing advertiser group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.advertiserGroups.update", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "PUT", + "description": "Updates an existing advertiser group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "advertisers": { + "methods": { + "get": { + "id": "dfareporting.advertisers.get", + "path": "userprofiles/{profileId}/advertisers/{id}", + "httpMethod": "GET", + "description": "Gets one advertiser by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.advertisers.insert", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "POST", + "description": "Inserts a new advertiser.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.advertisers.list", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "GET", + "description": "Retrieves a list of advertisers, possibly filtered.", + "parameters": { + "advertiserGroupIds": { + "type": "string", + "description": "Select only advertisers with these advertiser group IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "floodlightConfigurationIds": { + "type": "string", + "description": "Select only advertisers with these floodlight configuration IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only advertisers with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "includeAdvertisersWithoutGroupsOnly": { + "type": "boolean", + "description": "Select only advertisers which do not belong to any advertiser group.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "onlyParent": { + "type": "boolean", + "description": "Select only advertisers which use another advertiser's floodlight configuration.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "status": { + "type": "string", + "description": "Select only advertisers with the specified status.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only advertisers with these subaccount IDs.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdvertisersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.advertisers.patch", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "PATCH", + "description": "Updates an existing advertiser. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.advertisers.update", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "PUT", + "description": "Updates an existing advertiser.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "browsers": { + "methods": { + "list": { + "id": "dfareporting.browsers.list", + "path": "userprofiles/{profileId}/browsers", + "httpMethod": "GET", + "description": "Retrieves a list of browsers.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "BrowsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "campaignCreativeAssociations": { + "methods": { + "insert": { + "id": "dfareporting.campaignCreativeAssociations.insert", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "httpMethod": "POST", + "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Campaign ID in this association.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "CampaignCreativeAssociation" + }, + "response": { + "$ref": "CampaignCreativeAssociation" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.campaignCreativeAssociations.list", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "httpMethod": "GET", + "description": "Retrieves the list of creative IDs associated with the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Campaign ID in this association.", + "required": true, + "format": "int64", + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "response": { + "$ref": "CampaignCreativeAssociationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "campaigns": { + "methods": { + "get": { + "id": "dfareporting.campaigns.get", + "path": "userprofiles/{profileId}/campaigns/{id}", + "httpMethod": "GET", + "description": "Gets one campaign by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.campaigns.insert", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "POST", + "description": "Inserts a new campaign.", + "parameters": { + "defaultLandingPageName": { + "type": "string", + "description": "Default landing page name for this new campaign. Must be less than 256 characters long.", + "required": true, + "location": "query" + }, + "defaultLandingPageUrl": { + "type": "string", + "description": "Default landing page URL for this new campaign.", + "required": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "defaultLandingPageName", + "defaultLandingPageUrl" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.campaigns.list", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "GET", + "description": "Retrieves a list of campaigns, possibly filtered.", + "parameters": { + "advertiserGroupIds": { + "type": "string", + "description": "Select only campaigns whose advertisers belong to these advertiser groups.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "advertiserIds": { + "type": "string", + "description": "Select only campaigns that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", + "location": "query" + }, + "atLeastOneOptimizationActivity": { + "type": "boolean", + "description": "Select only campaigns that have at least one optimization activity.", + "location": "query" + }, + "excludedIds": { + "type": "string", + "description": "Exclude campaigns with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only campaigns with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "overriddenEventTagId": { + "type": "string", + "description": "Select only campaigns that have overridden this event tag ID.", + "format": "int64", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only campaigns that belong to this subaccount.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CampaignsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.campaigns.patch", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "PATCH", + "description": "Updates an existing campaign. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Campaign ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.campaigns.update", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "PUT", + "description": "Updates an existing campaign.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "changeLogs": { + "methods": { + "get": { + "id": "dfareporting.changeLogs.get", + "path": "userprofiles/{profileId}/changeLogs/{id}", + "httpMethod": "GET", + "description": "Gets one change log by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Change log ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ChangeLog" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.changeLogs.list", + "path": "userprofiles/{profileId}/changeLogs", + "httpMethod": "GET", + "description": "Retrieves a list of change logs.", + "parameters": { + "action": { + "type": "string", + "description": "Select only change logs with the specified action.", + "enum": [ + "ACTION_ADD", + "ACTION_ASSIGN", + "ACTION_ASSOCIATE", + "ACTION_CREATE", + "ACTION_DELETE", + "ACTION_DISABLE", + "ACTION_EMAIL_TAGS", + "ACTION_ENABLE", + "ACTION_LINK", + "ACTION_MARK_AS_DEFAULT", + "ACTION_PUSH", + "ACTION_REMOVE", + "ACTION_SEND", + "ACTION_SHARE", + "ACTION_UNASSIGN", + "ACTION_UNLINK", + "ACTION_UPDATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only change logs with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxChangeTime": { + "type": "string", + "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "minChangeTime": { + "type": "string", + "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query" + }, + "objectIds": { + "type": "string", + "description": "Select only change logs with these object IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "objectType": { + "type": "string", + "description": "Select only change logs with the specified object type.", + "enum": [ + "OBJECT_ACCOUNT", + "OBJECT_ACCOUNT_BILLING_FEATURE", + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_ADVERTISER_GROUP", + "OBJECT_BILLING_ACCOUNT_GROUP", + "OBJECT_BILLING_FEATURE", + "OBJECT_BILLING_MINIMUM_FEE", + "OBJECT_BILLING_PROFILE", + "OBJECT_CAMPAIGN", + "OBJECT_CONTENT_CATEGORY", + "OBJECT_CREATIVE", + "OBJECT_CREATIVE_ASSET", + "OBJECT_CREATIVE_BUNDLE", + "OBJECT_CREATIVE_FIELD", + "OBJECT_CREATIVE_GROUP", + "OBJECT_DFA_SITE", + "OBJECT_EVENT_TAG", + "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", + "OBJECT_FLOODLIGHT_ACTVITY", + "OBJECT_FLOODLIGHT_CONFIGURATION", + "OBJECT_INSTREAM_CREATIVE", + "OBJECT_LANDING_PAGE", + "OBJECT_MEDIA_ORDER", + "OBJECT_PLACEMENT", + "OBJECT_PLACEMENT_STRATEGY", + "OBJECT_PLAYSTORE_LINK", + "OBJECT_PROVIDED_LIST_CLIENT", + "OBJECT_RATE_CARD", + "OBJECT_REMARKETING_LIST", + "OBJECT_RICHMEDIA_CREATIVE", + "OBJECT_SD_SITE", + "OBJECT_SIZE", + "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", + "OBJECT_USER_PROFILE", + "OBJECT_USER_PROFILE_FILTER", + "OBJECT_USER_ROLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Select only change logs whose object ID, user name, old or new values match the search string.", + "location": "query" + }, + "userProfileIds": { + "type": "string", + "description": "Select only change logs with these user profile IDs.", + "format": "int64", + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ChangeLogsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "cities": { + "methods": { + "list": { + "id": "dfareporting.cities.list", + "path": "userprofiles/{profileId}/cities", + "httpMethod": "GET", + "description": "Retrieves a list of cities, possibly filtered.", + "parameters": { + "countryDartIds": { + "type": "string", + "description": "Select only cities from these countries.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "dartIds": { + "type": "string", + "description": "Select only cities with these DART IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "namePrefix": { + "type": "string", + "description": "Select only cities with names starting with this prefix.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "regionDartIds": { + "type": "string", + "description": "Select only cities from these regions.", + "format": "int64", + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "connectionTypes": { + "methods": { + "get": { + "id": "dfareporting.connectionTypes.get", + "path": "userprofiles/{profileId}/connectionTypes/{id}", + "httpMethod": "GET", + "description": "Gets one connection type by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Connection type ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ConnectionType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.connectionTypes.list", + "path": "userprofiles/{profileId}/connectionTypes", + "httpMethod": "GET", + "description": "Retrieves a list of connection types.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ConnectionTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "contentCategories": { + "methods": { + "delete": { + "id": "dfareporting.contentCategories.delete", + "path": "userprofiles/{profileId}/contentCategories/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing content category.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.contentCategories.get", + "path": "userprofiles/{profileId}/contentCategories/{id}", + "httpMethod": "GET", + "description": "Gets one content category by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.contentCategories.insert", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "POST", + "description": "Inserts a new content category.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.contentCategories.list", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "GET", + "description": "Retrieves a list of content categories, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only content categories with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ContentCategoriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.contentCategories.patch", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "PATCH", + "description": "Updates an existing content category. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.contentCategories.update", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "PUT", + "description": "Updates an existing content category.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "conversions": { + "methods": { + "batchinsert": { + "id": "dfareporting.conversions.batchinsert", + "path": "userprofiles/{profileId}/conversions/batchinsert", + "httpMethod": "POST", + "description": "Inserts conversions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ConversionsBatchInsertRequest" + }, + "response": { + "$ref": "ConversionsBatchInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + } + } + }, + "countries": { + "methods": { + "get": { + "id": "dfareporting.countries.get", + "path": "userprofiles/{profileId}/countries/{dartId}", + "httpMethod": "GET", + "description": "Gets one country by ID.", + "parameters": { + "dartId": { + "type": "string", + "description": "Country DART ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "dartId" + ], + "response": { + "$ref": "Country" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.countries.list", + "path": "userprofiles/{profileId}/countries", + "httpMethod": "GET", + "description": "Retrieves a list of countries.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CountriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeAssets": { + "methods": { + "insert": { + "id": "dfareporting.creativeAssets.insert", + "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", + "httpMethod": "POST", + "description": "Inserts a new creative asset.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative. This is a required field.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "request": { + "$ref": "CreativeAssetMetadata" + }, + "response": { + "$ref": "CreativeAssetMetadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ], + "supportsMediaUpload": true, + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "1024MB", + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/dfareporting/v2.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + }, + "resumable": { + "multipart": true, + "path": "/resumable/upload/dfareporting/v2.5/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + } + } + } + } + } + }, + "creativeFieldValues": { + "methods": { + "delete": { + "id": "dfareporting.creativeFieldValues.delete", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.creativeFieldValues.get", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "httpMethod": "GET", + "description": "Gets one creative field value by ID.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeFieldValues.insert", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "POST", + "description": "Inserts a new creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeFieldValues.list", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "GET", + "description": "Retrieves a list of creative field values, possibly filtered.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "ids": { + "type": "string", + "description": "Select only creative field values with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "VALUE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "response": { + "$ref": "CreativeFieldValuesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeFieldValues.patch", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "PATCH", + "description": "Updates an existing creative field value. This method supports patch semantics.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeFieldValues.update", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "PUT", + "description": "Updates an existing creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeFields": { + "methods": { + "delete": { + "id": "dfareporting.creativeFields.delete", + "path": "userprofiles/{profileId}/creativeFields/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing creative field.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.creativeFields.get", + "path": "userprofiles/{profileId}/creativeFields/{id}", + "httpMethod": "GET", + "description": "Gets one creative field by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeFields.insert", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "POST", + "description": "Inserts a new creative field.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeFields.list", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "GET", + "description": "Retrieves a list of creative fields, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only creative fields that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creative fields with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativeFieldsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeFields.patch", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "PATCH", + "description": "Updates an existing creative field. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeFields.update", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "PUT", + "description": "Updates an existing creative field.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeGroups": { + "methods": { + "get": { + "id": "dfareporting.creativeGroups.get", + "path": "userprofiles/{profileId}/creativeGroups/{id}", + "httpMethod": "GET", + "description": "Gets one creative group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeGroups.insert", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "POST", + "description": "Inserts a new creative group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeGroups.list", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "GET", + "description": "Retrieves a list of creative groups, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only creative groups that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "groupNumber": { + "type": "integer", + "description": "Select only creative groups that belong to this subgroup.", + "format": "int32", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creative groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativeGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeGroups.patch", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "PATCH", + "description": "Updates an existing creative group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeGroups.update", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "PUT", + "description": "Updates an existing creative group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creatives": { + "methods": { + "get": { + "id": "dfareporting.creatives.get", + "path": "userprofiles/{profileId}/creatives/{id}", + "httpMethod": "GET", + "description": "Gets one creative by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creatives.insert", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "POST", + "description": "Inserts a new creative.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creatives.list", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "GET", + "description": "Retrieves a list of creatives, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active creatives. Leave blank to select active and inactive creatives.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only creatives with this advertiser ID.", + "format": "int64", + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", + "location": "query" + }, + "campaignId": { + "type": "string", + "description": "Select only creatives with this campaign ID.", + "format": "int64", + "location": "query" + }, + "companionCreativeIds": { + "type": "string", + "description": "Select only in-stream video creatives with these companion IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeFieldIds": { + "type": "string", + "description": "Select only creatives with these creative field IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creatives with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "renderingIds": { + "type": "string", + "description": "Select only creatives with these rendering IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only creatives with these size IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "studioCreativeId": { + "type": "string", + "description": "Select only creatives corresponding to this Studio creative ID.", + "format": "int64", + "location": "query" + }, + "types": { + "type": "string", + "description": "Select only creatives with these creative types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creatives.patch", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "PATCH", + "description": "Updates an existing creative. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creatives.update", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "PUT", + "description": "Updates an existing creative.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "dimensionValues": { + "methods": { + "query": { + "id": "dfareporting.dimensionValues.query", + "path": "userprofiles/{profileId}/dimensionvalues/query", + "httpMethod": "POST", + "description": "Retrieves list of report dimension values for a list of filters.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "100", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DimensionValueRequest" + }, + "response": { + "$ref": "DimensionValueList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "directorySiteContacts": { + "methods": { + "get": { + "id": "dfareporting.directorySiteContacts.get", + "path": "userprofiles/{profileId}/directorySiteContacts/{id}", + "httpMethod": "GET", + "description": "Gets one directory site contact by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Directory site contact ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "DirectorySiteContact" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.directorySiteContacts.list", + "path": "userprofiles/{profileId}/directorySiteContacts", + "httpMethod": "GET", + "description": "Retrieves a list of directory site contacts, possibly filtered.", + "parameters": { + "directorySiteIds": { + "type": "string", + "description": "Select only directory site contacts with these directory site IDs. This is a required field.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only directory site contacts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DirectorySiteContactsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "directorySites": { + "methods": { + "get": { + "id": "dfareporting.directorySites.get", + "path": "userprofiles/{profileId}/directorySites/{id}", + "httpMethod": "GET", + "description": "Gets one directory site by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Directory site ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.directorySites.insert", + "path": "userprofiles/{profileId}/directorySites", + "httpMethod": "POST", + "description": "Inserts a new directory site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DirectorySite" + }, + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.directorySites.list", + "path": "userprofiles/{profileId}/directorySites", + "httpMethod": "GET", + "description": "Retrieves a list of directory sites, possibly filtered.", + "parameters": { + "acceptsInStreamVideoPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsInterstitialPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsPublisherPaidPlacements": { + "type": "boolean", + "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", + "location": "query" + }, + "active": { + "type": "boolean", + "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", + "location": "query" + }, + "countryId": { + "type": "string", + "description": "Select only directory sites with this country ID.", + "format": "int64", + "location": "query" + }, + "dfp_network_code": { + "type": "string", + "description": "Select only directory sites with this DFP network code.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only directory sites with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "parentId": { + "type": "string", + "description": "Select only directory sites with this parent ID.", + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DirectorySitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "dynamicTargetingKeys": { + "methods": { + "delete": { + "id": "dfareporting.dynamicTargetingKeys.delete", + "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", + "httpMethod": "DELETE", + "description": "Deletes an existing dynamic targeting key.", + "parameters": { + "name": { + "type": "string", + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "required": true, + "location": "query" + }, + "objectId": { + "type": "string", + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "required": true, + "format": "int64", + "location": "path" + }, + "objectType": { + "type": "string", + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "required": true, + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "objectId", + "name", + "objectType" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.dynamicTargetingKeys.insert", + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "httpMethod": "POST", + "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DynamicTargetingKey" + }, + "response": { + "$ref": "DynamicTargetingKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.dynamicTargetingKeys.list", + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "httpMethod": "GET", + "description": "Retrieves a list of dynamic targeting keys.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only dynamic targeting keys whose object has this advertiser ID.", + "format": "int64", + "location": "query" + }, + "names": { + "type": "string", + "description": "Select only dynamic targeting keys exactly matching these names.", + "repeated": true, + "location": "query" + }, + "objectId": { + "type": "string", + "description": "Select only dynamic targeting keys with this object ID.", + "format": "int64", + "location": "query" + }, + "objectType": { + "type": "string", + "description": "Select only dynamic targeting keys with this object type.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DynamicTargetingKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "eventTags": { + "methods": { + "delete": { + "id": "dfareporting.eventTags.delete", + "path": "userprofiles/{profileId}/eventTags/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing event tag.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.eventTags.get", + "path": "userprofiles/{profileId}/eventTags/{id}", + "httpMethod": "GET", + "description": "Gets one event tag by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.eventTags.insert", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "POST", + "description": "Inserts a new event tag.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.eventTags.list", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "GET", + "description": "Retrieves a list of event tags, possibly filtered.", + "parameters": { + "adId": { + "type": "string", + "description": "Select only event tags that belong to this ad.", + "format": "int64", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only event tags that belong to this advertiser.", + "format": "int64", + "location": "query" + }, + "campaignId": { + "type": "string", + "description": "Select only event tags that belong to this campaign.", + "format": "int64", + "location": "query" + }, + "definitionsOnly": { + "type": "boolean", + "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", + "location": "query" + }, + "enabled": { + "type": "boolean", + "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", + "location": "query" + }, + "eventTagTypes": { + "type": "string", + "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only event tags with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "EventTagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.eventTags.patch", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "PATCH", + "description": "Updates an existing event tag. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.eventTags.update", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "PUT", + "description": "Updates an existing event tag.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "files": { + "methods": { + "get": { + "id": "dfareporting.files.get", + "path": "reports/{reportId}/files/{fileId}", + "httpMethod": "GET", + "description": "Retrieves a report file by its report ID and file ID.", + "parameters": { + "fileId": { + "type": "string", + "description": "The ID of the report file.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "reportId", + "fileId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "id": "dfareporting.files.list", + "path": "userprofiles/{profileId}/files", + "httpMethod": "GET", + "description": "Lists files for a user profile.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "scope": { + "type": "string", + "description": "The scope that defines which results are returned, default is 'MINE'.", + "default": "MINE", + "enum": [ + "ALL", + "MINE", + "SHARED_WITH_ME" + ], + "enumDescriptions": [ + "All files in account.", + "My files.", + "Files shared with me." + ], + "location": "query" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "floodlightActivities": { + "methods": { + "delete": { + "id": "dfareporting.floodlightActivities.delete", + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing floodlight activity.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "generatetag": { + "id": "dfareporting.floodlightActivities.generatetag", + "path": "userprofiles/{profileId}/floodlightActivities/generatetag", + "httpMethod": "POST", + "description": "Generates a tag for a floodlight activity.", + "parameters": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID for which we want to generate a tag.", + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivitiesGenerateTagResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.floodlightActivities.get", + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight activity by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.floodlightActivities.insert", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "POST", + "description": "Inserts a new floodlight activity.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightActivities.list", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight activities, possibly filtered.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "floodlightActivityGroupIds": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "floodlightActivityGroupName": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group name.", + "location": "query" + }, + "floodlightActivityGroupTagString": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group tag string.", + "location": "query" + }, + "floodlightActivityGroupType": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "tagString": { + "type": "string", + "description": "Select only floodlight activities with the specified tag string.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightActivities.patch", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight activity. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightActivities.update", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "PUT", + "description": "Updates an existing floodlight activity.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightActivityGroups": { + "methods": { + "get": { + "id": "dfareporting.floodlightActivityGroups.get", + "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight activity group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity Group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.floodlightActivityGroups.insert", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "POST", + "description": "Inserts a new floodlight activity group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightActivityGroups.list", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight activity groups, possibly filtered.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only floodlight activity groups with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivityGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightActivityGroups.patch", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight activity group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity Group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightActivityGroups.update", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "PUT", + "description": "Updates an existing floodlight activity group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightConfigurations": { + "methods": { + "get": { + "id": "dfareporting.floodlightConfigurations.get", + "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight configuration by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight configuration ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightConfigurations.list", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight configurations, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightConfigurationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightConfigurations.patch", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight configuration. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight configuration ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightConfigurations.update", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "PUT", + "description": "Updates an existing floodlight configuration.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "inventoryItems": { + "methods": { + "get": { + "id": "dfareporting.inventoryItems.get", + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", + "httpMethod": "GET", + "description": "Gets one inventory item by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Inventory item ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "InventoryItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.inventoryItems.list", + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", + "httpMethod": "GET", + "description": "Retrieves a list of inventory items, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only inventory items with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "inPlan": { + "type": "boolean", + "description": "Select only inventory items that are in plan.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "orderId": { + "type": "string", + "description": "Select only inventory items that belong to specified orders.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + }, + "siteId": { + "type": "string", + "description": "Select only inventory items that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only inventory items with this type.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "InventoryItemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "landingPages": { + "methods": { + "delete": { + "id": "dfareporting.landingPages.delete", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing campaign landing page.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.landingPages.get", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "httpMethod": "GET", + "description": "Gets one campaign landing page by ID.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.landingPages.insert", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "POST", + "description": "Inserts a new landing page for the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.landingPages.list", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "GET", + "description": "Retrieves the list of landing pages for the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "response": { + "$ref": "LandingPagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.landingPages.patch", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "PATCH", + "description": "Updates an existing campaign landing page. This method supports patch semantics.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.landingPages.update", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "PUT", + "description": "Updates an existing campaign landing page.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "metros": { + "methods": { + "list": { + "id": "dfareporting.metros.list", + "path": "userprofiles/{profileId}/metros", + "httpMethod": "GET", + "description": "Retrieves a list of metros.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "MetrosListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "mobileCarriers": { + "methods": { + "get": { + "id": "dfareporting.mobileCarriers.get", + "path": "userprofiles/{profileId}/mobileCarriers/{id}", + "httpMethod": "GET", + "description": "Gets one mobile carrier by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Mobile carrier ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "MobileCarrier" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.mobileCarriers.list", + "path": "userprofiles/{profileId}/mobileCarriers", + "httpMethod": "GET", + "description": "Retrieves a list of mobile carriers.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "MobileCarriersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystemVersions": { + "methods": { + "get": { + "id": "dfareporting.operatingSystemVersions.get", + "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", + "httpMethod": "GET", + "description": "Gets one operating system version by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Operating system version ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "OperatingSystemVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.operatingSystemVersions.list", + "path": "userprofiles/{profileId}/operatingSystemVersions", + "httpMethod": "GET", + "description": "Retrieves a list of operating system versions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "OperatingSystemVersionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystems": { + "methods": { + "get": { + "id": "dfareporting.operatingSystems.get", + "path": "userprofiles/{profileId}/operatingSystems/{dartId}", + "httpMethod": "GET", + "description": "Gets one operating system by DART ID.", + "parameters": { + "dartId": { + "type": "string", + "description": "Operating system DART ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "dartId" + ], + "response": { + "$ref": "OperatingSystem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.operatingSystems.list", + "path": "userprofiles/{profileId}/operatingSystems", + "httpMethod": "GET", + "description": "Retrieves a list of operating systems.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "OperatingSystemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orderDocuments": { + "methods": { + "get": { + "id": "dfareporting.orderDocuments.get", + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", + "httpMethod": "GET", + "description": "Gets one order document by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Order document ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "OrderDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.orderDocuments.list", + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", + "httpMethod": "GET", + "description": "Retrieves a list of order documents, possibly filtered.", + "parameters": { + "approved": { + "type": "boolean", + "description": "Select only order documents that have been approved by at least one user.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only order documents with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "orderId": { + "type": "string", + "description": "Select only order documents for specified orders.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", + "location": "query" + }, + "siteId": { + "type": "string", + "description": "Select only order documents that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "OrderDocumentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orders": { + "methods": { + "get": { + "id": "dfareporting.orders.get", + "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", + "httpMethod": "GET", + "description": "Gets one order by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Order ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for orders.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.orders.list", + "path": "userprofiles/{profileId}/projects/{projectId}/orders", + "httpMethod": "GET", + "description": "Retrieves a list of orders, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only orders with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for orders.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", + "location": "query" + }, + "siteId": { + "type": "string", + "description": "Select only orders that are associated with these site IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementGroups": { + "methods": { + "get": { + "id": "dfareporting.placementGroups.get", + "path": "userprofiles/{profileId}/placementGroups/{id}", + "httpMethod": "GET", + "description": "Gets one placement group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placementGroups.insert", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "POST", + "description": "Inserts a new placement group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placementGroups.list", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "GET", + "description": "Retrieves a list of placement groups, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only placement groups that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only placement groups that belong to these campaigns.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "contentCategoryIds": { + "type": "string", + "description": "Select only placement groups that are associated with these content categories.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only placement groups that are associated with these directory sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only placement groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "maxStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "placementGroupType": { + "type": "string", + "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "placementStrategyIds": { + "type": "string", + "description": "Select only placement groups that are associated with these placement strategies.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pricingTypes": { + "type": "string", + "description": "Select only placement groups with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", + "location": "query" + }, + "siteIds": { + "type": "string", + "description": "Select only placement groups that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placementGroups.patch", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "PATCH", + "description": "Updates an existing placement group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placementGroups.update", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "PUT", + "description": "Updates an existing placement group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementStrategies": { + "methods": { + "delete": { + "id": "dfareporting.placementStrategies.delete", + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing placement strategy.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.placementStrategies.get", + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "httpMethod": "GET", + "description": "Gets one placement strategy by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placementStrategies.insert", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "POST", + "description": "Inserts a new placement strategy.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placementStrategies.list", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "GET", + "description": "Retrieves a list of placement strategies, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only placement strategies with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementStrategiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placementStrategies.patch", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "PATCH", + "description": "Updates an existing placement strategy. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placementStrategies.update", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "PUT", + "description": "Updates an existing placement strategy.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placements": { + "methods": { + "generatetags": { + "id": "dfareporting.placements.generatetags", + "path": "userprofiles/{profileId}/placements/generatetags", + "httpMethod": "POST", + "description": "Generates tags for a placement.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Generate placements belonging to this campaign. This is a required field.", + "format": "int64", + "location": "query" + }, + "placementIds": { + "type": "string", + "description": "Generate tags for these placements.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "tagFormats": { + "type": "string", + "description": "Tag formats to generate for these placements.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementsGenerateTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.placements.get", + "path": "userprofiles/{profileId}/placements/{id}", + "httpMethod": "GET", + "description": "Gets one placement by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placements.insert", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "POST", + "description": "Inserts a new placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placements.list", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "GET", + "description": "Retrieves a list of placements, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only placements that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only placements that belong to these campaigns.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "compatibilities": { + "type": "string", + "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "contentCategoryIds": { + "type": "string", + "description": "Select only placements that are associated with these content categories.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only placements that are associated with these directory sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "groupIds": { + "type": "string", + "description": "Select only placements that belong to these placement groups.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only placements with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "maxStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "paymentSource": { + "type": "string", + "description": "Select only placements with this payment source.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "placementStrategyIds": { + "type": "string", + "description": "Select only placements that are associated with these placement strategies.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pricingTypes": { + "type": "string", + "description": "Select only placements with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", + "location": "query" + }, + "siteIds": { + "type": "string", + "description": "Select only placements that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only placements that are associated with these sizes.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placements.patch", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "PATCH", + "description": "Updates an existing placement. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placements.update", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "PUT", + "description": "Updates an existing placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "platformTypes": { + "methods": { + "get": { + "id": "dfareporting.platformTypes.get", + "path": "userprofiles/{profileId}/platformTypes/{id}", + "httpMethod": "GET", + "description": "Gets one platform type by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Platform type ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlatformType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.platformTypes.list", + "path": "userprofiles/{profileId}/platformTypes", + "httpMethod": "GET", + "description": "Retrieves a list of platform types.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlatformTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "postalCodes": { + "methods": { + "get": { + "id": "dfareporting.postalCodes.get", + "path": "userprofiles/{profileId}/postalCodes/{code}", + "httpMethod": "GET", + "description": "Gets one postal code by ID.", + "parameters": { + "code": { + "type": "string", + "description": "Postal code ID.", + "required": true, + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "code" + ], + "response": { + "$ref": "PostalCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.postalCodes.list", + "path": "userprofiles/{profileId}/postalCodes", + "httpMethod": "GET", + "description": "Retrieves a list of postal codes.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PostalCodesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "projects": { + "methods": { + "get": { + "id": "dfareporting.projects.get", + "path": "userprofiles/{profileId}/projects/{id}", + "httpMethod": "GET", + "description": "Gets one project by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Project ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.projects.list", + "path": "userprofiles/{profileId}/projects", + "httpMethod": "GET", + "description": "Retrieves a list of projects, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only projects with these advertiser IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only projects with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ProjectsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "regions": { + "methods": { + "list": { + "id": "dfareporting.regions.list", + "path": "userprofiles/{profileId}/regions", + "httpMethod": "GET", + "description": "Retrieves a list of regions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "RegionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingListShares": { + "methods": { + "get": { + "id": "dfareporting.remarketingListShares.get", + "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", + "httpMethod": "GET", + "description": "Gets one remarketing list share by remarketing list ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.remarketingListShares.patch", + "path": "userprofiles/{profileId}/remarketingListShares", + "httpMethod": "PATCH", + "description": "Updates an existing remarketing list share. This method supports patch semantics.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.remarketingListShares.update", + "path": "userprofiles/{profileId}/remarketingListShares", + "httpMethod": "PUT", + "description": "Updates an existing remarketing list share.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingLists": { + "methods": { + "get": { + "id": "dfareporting.remarketingLists.get", + "path": "userprofiles/{profileId}/remarketingLists/{id}", + "httpMethod": "GET", + "description": "Gets one remarketing list by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.remarketingLists.insert", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "POST", + "description": "Inserts a new remarketing list.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.remarketingLists.list", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "GET", + "description": "Retrieves a list of remarketing lists, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active or only inactive remarketing lists.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only remarketing lists owned by this advertiser.", + "required": true, + "format": "int64", + "location": "query" + }, + "floodlightActivityId": { + "type": "string", + "description": "Select only remarketing lists that have this floodlight activity ID.", + "format": "int64", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "name": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "response": { + "$ref": "RemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.remarketingLists.patch", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "PATCH", + "description": "Updates an existing remarketing list. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.remarketingLists.update", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "PUT", + "description": "Updates an existing remarketing list.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "reports": { + "methods": { + "delete": { + "id": "dfareporting.reports.delete", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "DELETE", + "description": "Deletes a report by its ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "get": { + "id": "dfareporting.reports.get", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "GET", + "description": "Retrieves a report by its ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "insert": { + "id": "dfareporting.reports.insert", + "path": "userprofiles/{profileId}/reports", + "httpMethod": "POST", + "description": "Creates a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "list": { + "id": "dfareporting.reports.list", + "path": "userprofiles/{profileId}/reports", + "httpMethod": "GET", + "description": "Retrieves list of reports.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "scope": { + "type": "string", + "description": "The scope that defines which results are returned, default is 'MINE'.", + "default": "MINE", + "enum": [ + "ALL", + "MINE" + ], + "enumDescriptions": [ + "All reports in account.", + "My reports." + ], + "location": "query" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME", + "NAME" + ], + "enumDescriptions": [ + "Sort by report ID.", + "Sort by 'lastModifiedTime' field.", + "Sort by name of reports." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "patch": { + "id": "dfareporting.reports.patch", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "PATCH", + "description": "Updates a report. This method supports patch semantics.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "run": { + "id": "dfareporting.reports.run", + "path": "userprofiles/{profileId}/reports/{reportId}/run", + "httpMethod": "POST", + "description": "Runs a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + }, + "synchronous": { + "type": "boolean", + "description": "If set and true, tries to run the report synchronously.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "update": { + "id": "dfareporting.reports.update", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "PUT", + "description": "Updates a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + }, + "resources": { + "compatibleFields": { + "methods": { + "query": { + "id": "dfareporting.reports.compatibleFields.query", + "path": "userprofiles/{profileId}/reports/compatiblefields/query", + "httpMethod": "POST", + "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "CompatibleFields" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "files": { + "methods": { + "get": { + "id": "dfareporting.reports.files.get", + "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", + "httpMethod": "GET", + "description": "Retrieves a report file.", + "parameters": { + "fileId": { + "type": "string", + "description": "The ID of the report file.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId", + "fileId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "id": "dfareporting.reports.files.list", + "path": "userprofiles/{profileId}/reports/{reportId}/files", + "httpMethod": "GET", + "description": "Lists files for a report.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the parent report.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + } + } + }, + "sites": { + "methods": { + "get": { + "id": "dfareporting.sites.get", + "path": "userprofiles/{profileId}/sites/{id}", + "httpMethod": "GET", + "description": "Gets one site by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Site ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.sites.insert", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "POST", + "description": "Inserts a new site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.sites.list", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "GET", + "description": "Retrieves a list of sites, possibly filtered.", + "parameters": { + "acceptsInStreamVideoPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsInterstitialPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsPublisherPaidPlacements": { + "type": "boolean", + "description": "Select only sites that accept publisher paid placements.", + "location": "query" + }, + "adWordsSite": { + "type": "boolean", + "description": "Select only AdWords sites.", + "location": "query" + }, + "approved": { + "type": "boolean", + "description": "Select only approved sites.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only sites with these campaign IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only sites with these directory site IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only sites with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only sites with this subaccount ID.", + "format": "int64", + "location": "query" + }, + "unmappedSite": { + "type": "boolean", + "description": "Select only sites that have not been mapped to a directory site.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.sites.patch", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "PATCH", + "description": "Updates an existing site. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Site ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.sites.update", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "PUT", + "description": "Updates an existing site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "sizes": { + "methods": { + "get": { + "id": "dfareporting.sizes.get", + "path": "userprofiles/{profileId}/sizes/{id}", + "httpMethod": "GET", + "description": "Gets one size by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Size ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.sizes.insert", + "path": "userprofiles/{profileId}/sizes", + "httpMethod": "POST", + "description": "Inserts a new size.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Size" + }, + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.sizes.list", + "path": "userprofiles/{profileId}/sizes", + "httpMethod": "GET", + "description": "Retrieves a list of sizes, possibly filtered.", + "parameters": { + "height": { + "type": "integer", + "description": "Select only sizes with this height.", + "format": "int32", + "location": "query" + }, + "iabStandard": { + "type": "boolean", + "description": "Select only IAB standard sizes.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only sizes with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "width": { + "type": "integer", + "description": "Select only sizes with this width.", + "format": "int32", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SizesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "subaccounts": { + "methods": { + "get": { + "id": "dfareporting.subaccounts.get", + "path": "userprofiles/{profileId}/subaccounts/{id}", + "httpMethod": "GET", + "description": "Gets one subaccount by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Subaccount ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.subaccounts.insert", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "POST", + "description": "Inserts a new subaccount.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.subaccounts.list", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "GET", + "description": "Gets a list of subaccounts, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only subaccounts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SubaccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.subaccounts.patch", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "PATCH", + "description": "Updates an existing subaccount. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Subaccount ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.subaccounts.update", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "PUT", + "description": "Updates an existing subaccount.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetableRemarketingLists": { + "methods": { + "get": { + "id": "dfareporting.targetableRemarketingLists.get", + "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", + "httpMethod": "GET", + "description": "Gets one remarketing list by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "TargetableRemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.targetableRemarketingLists.list", + "path": "userprofiles/{profileId}/targetableRemarketingLists", + "httpMethod": "GET", + "description": "Retrieves a list of targetable remarketing lists, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active or only inactive targetable remarketing lists.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only targetable remarketing lists targetable by these advertisers.", + "required": true, + "format": "int64", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "name": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "response": { + "$ref": "TargetableRemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userProfiles": { + "methods": { + "get": { + "id": "dfareporting.userProfiles.get", + "path": "userprofiles/{profileId}", + "httpMethod": "GET", + "description": "Gets one user profile by ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userProfiles.list", + "path": "userprofiles", + "httpMethod": "GET", + "description": "Retrieves list of user profiles for a user.", + "response": { + "$ref": "UserProfileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissionGroups": { + "methods": { + "get": { + "id": "dfareporting.userRolePermissionGroups.get", + "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", + "httpMethod": "GET", + "description": "Gets one user role permission group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role permission group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRolePermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRolePermissionGroups.list", + "path": "userprofiles/{profileId}/userRolePermissionGroups", + "httpMethod": "GET", + "description": "Gets a list of all supported user role permission groups.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolePermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissions": { + "methods": { + "get": { + "id": "dfareporting.userRolePermissions.get", + "path": "userprofiles/{profileId}/userRolePermissions/{id}", + "httpMethod": "GET", + "description": "Gets one user role permission by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role permission ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRolePermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRolePermissions.list", + "path": "userprofiles/{profileId}/userRolePermissions", + "httpMethod": "GET", + "description": "Gets a list of user role permissions, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only user role permissions with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolePermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRoles": { + "methods": { + "delete": { + "id": "dfareporting.userRoles.delete", + "path": "userprofiles/{profileId}/userRoles/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing user role.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.userRoles.get", + "path": "userprofiles/{profileId}/userRoles/{id}", + "httpMethod": "GET", + "description": "Gets one user role by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.userRoles.insert", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "POST", + "description": "Inserts a new user role.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRoles.list", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "GET", + "description": "Retrieves a list of user roles, possibly filtered.", + "parameters": { + "accountUserRoleOnly": { + "type": "boolean", + "description": "Select only account level user roles not associated with any specific subaccount.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only user roles with the specified IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only user roles that belong to this subaccount.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.userRoles.patch", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "PATCH", + "description": "Updates an existing user role. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.userRoles.update", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "PUT", + "description": "Updates an existing user role.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + } + } +} diff --git a/etc/api/dfareporting/v2.5beta1/dfareporting-api.json b/etc/api/dfareporting/v2.5beta1/dfareporting-api.json index 6753924aa4..87040486d2 100644 --- a/etc/api/dfareporting/v2.5beta1/dfareporting-api.json +++ b/etc/api/dfareporting/v2.5beta1/dfareporting-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/b0IOUhU53JuSfNae26EQ_3WJUSA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/z0eZUaqOcxxITNN1hSlIwZVa79Y\"", "discoveryVersion": "v1", "id": "dfareporting:v2.5beta1", "name": "dfareporting", "version": "v2.5beta1", - "revision": "20160323", + "revision": "20160803", "title": "DCM/DFA Reporting And Trafficking API", "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", "ownerDomain": "google.com", @@ -119,6 +119,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -126,6 +127,7 @@ "", "", "", + "", "" ] }, @@ -225,6 +227,7 @@ "ACTIVE_ADS_TIER_200K", "ACTIVE_ADS_TIER_300K", "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", "ACTIVE_ADS_TIER_75K" ], "enumDescriptions": [ @@ -232,6 +235,7 @@ "", "", "", + "", "" ] }, @@ -584,7 +588,7 @@ }, "compatibility": { "type": "string", - "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", "enum": [ "APP", "APP_INTERSTITIAL", @@ -602,7 +606,7 @@ }, "createInfo": { "$ref": "LastModifiedInfo", - "description": "Information about the creation of this ad.This is a read-only field." + "description": "Information about the creation of this ad. This is a read-only field." }, "creativeGroupAssignments": { "type": "array", @@ -617,7 +621,7 @@ }, "dayPartTargeting": { "$ref": "DayPartTargeting", - "description": "Time and day targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "defaultClickThroughEventTagProperties": { "$ref": "DefaultClickThroughEventTagProperties", @@ -645,7 +649,7 @@ }, "geoTargeting": { "$ref": "GeoTargeting", - "description": "Geographical targeting information for this ad.Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "id": { "type": "string", @@ -658,7 +662,7 @@ }, "keyValueTargetingExpression": { "$ref": "KeyValueTargetingExpression", - "description": "Key-value targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "kind": { "type": "string", @@ -682,7 +686,7 @@ }, "remarketingListExpression": { "$ref": "ListTargetingExpression", - "description": "Applicable when type is AD_SERVING_STANDARD_AD. Remarketing list targeting expression for this ad." + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "size": { "$ref": "Size", @@ -708,7 +712,7 @@ }, "technologyTargeting": { "$ref": "TechnologyTargeting", - "description": "Technology platform targeting information for this ad. Applicable when type is AD_SERVING_STANDARD_AD." + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." }, "type": { "type": "string", @@ -1441,7 +1445,7 @@ "properties": { "eventName": { "type": "string", - "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_BANNER, ENHANCED_IMAGE, and HTML5_BANNER creatives." + "description": "Advertiser event name associated with the click tag. This field is used by ENHANCED_IMAGE, and HTML5_BANNER creatives. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE" }, "name": { "type": "string", @@ -1647,7 +1651,7 @@ }, "encryptedUserId": { "type": "string", - "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with mobileDeviceId. This or mobileDeviceId is a required field." + "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserIdCandidates[] or mobileDeviceId is a required field." }, "floodlightActivityId": { "type": "string", @@ -1670,7 +1674,7 @@ }, "mobileDeviceId": { "type": "string", - "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId. This or encryptedUserId is a required field." + "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId and encryptedUserIdCandidates[]. This or encryptedUserId or encryptedUserIdCandidates[] is a required field." }, "ordinal": { "type": "string", @@ -1696,7 +1700,7 @@ "ConversionError": { "id": "ConversionError", "type": "object", - "description": "The error code and description for a conversion that failed to insert.", + "description": "The error code and description for a conversion that failed to insert or update.", "properties": { "code": { "type": "string", @@ -1728,11 +1732,11 @@ "ConversionStatus": { "id": "ConversionStatus", "type": "object", - "description": "The original conversion that was inserted and whether there were any errors.", + "description": "The original conversion that was inserted or updated and whether there were any errors.", "properties": { "conversion": { "$ref": "Conversion", - "description": "The original conversion that was inserted." + "description": "The original conversion that was inserted or updated." }, "errors": { "type": "array", @@ -1932,11 +1936,11 @@ }, "backupImageClickThroughUrl": { "type": "string", - "description": "Click-through URL for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageFeatures": { "type": "array", - "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: ENHANCED_BANNER and HTML5_BANNER.", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "type": "string", "enum": [ @@ -2079,15 +2083,15 @@ }, "backupImageReportingLabel": { "type": "string", - "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: ENHANCED_BANNER." + "description": "Reporting label used for HTML5 banner backup image. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "backupImageTargetWindow": { "$ref": "TargetWindow", - "description": "Target window for backup image. Applicable to the following creative types: ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER." + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE, and HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "clickTags": { "type": "array", - "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER.", + "description": "Click tags of the creative. For ENHANCED_BANNER, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For ENHANCED_IMAGE creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE HTML5_BANNER. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "items": { "$ref": "ClickTag" } @@ -2106,7 +2110,7 @@ }, "compatibility": { "type": "array", - "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", "items": { "type": "string", "enum": [ @@ -2127,7 +2131,7 @@ }, "convertFlashToHtml5": { "type": "boolean", - "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative types: ENHANCED_BANNER and FLASH_INPAGE." + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "counterCustomEvents": { "type": "array", @@ -2159,7 +2163,7 @@ }, "exitCustomEvents": { "type": "array", - "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of exit events configured for the creative. For ENHANCED_BANNER and ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags, For ENHANCED_BANNER, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2226,12 +2230,12 @@ }, "requiredFlashVersion": { "type": "integer", - "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "size": { "$ref": "Size", - "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, and for ENHANCED_BANNER creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." }, "skippable": { "type": "boolean", @@ -2267,11 +2271,11 @@ }, "thirdPartyBackupImageImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyRichMediaImpressionsUrl": { "type": "string", - "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA" + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." }, "thirdPartyUrls": { "type": "array", @@ -2282,7 +2286,7 @@ }, "timerCustomEvents": { "type": "array", - "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID.", + "description": "List of timer events configured for the creative. For ENHANCED_IMAGE creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: ENHANCED_IMAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset is not HTML_IMAGE.", "items": { "$ref": "CreativeCustomEvent" } @@ -2371,7 +2375,7 @@ "properties": { "actionScript3": { "type": "boolean", - "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE and ENHANCED_BANNER." + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "active": { "type": "boolean", @@ -2594,6 +2598,7 @@ "type": "string", "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", "ASSET_DISPLAY_TYPE_EXPANDING", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", @@ -2613,6 +2618,7 @@ "", "", "", + "", "" ] }, @@ -2646,7 +2652,7 @@ }, "flashVersion": { "type": "integer", - "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, ENHANCED_BANNER, all RICH_MEDIA, and all VPAID.", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE.", "format": "int32" }, "hideFlashObjects": { @@ -2725,7 +2731,7 @@ }, "role": { "type": "string", - "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, IMAGE, IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to ENHANCED_BANNER, FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR creative.", "enum": [ "ADDITIONAL_FLASH", "ADDITIONAL_IMAGE", @@ -2749,7 +2755,7 @@ }, "size": { "$ref": "Size", - "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_BANNER, ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE creatives, if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: ENHANCED_IMAGE, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to ENHANCED_BANNER when the primary asset type is not HTML_IMAGE." }, "sslCompliant": { "type": "boolean", @@ -3008,7 +3014,7 @@ }, "warnedValidationRules": { "type": "array", - "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_INVALID\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"MRAID_REFERENCED\"\n- \"ADMOB_REFERENCED\"\n- \"FILE_TYPE_INVALID\"\n- \"ZIP_INVALID\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"NOT_SSL_COMPLIANT\"\n- \"FILE_DETAIL_EMPTY\"\n- \"ASSET_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"HTML5_FEATURE_UNSUPPORTED' \"", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", "items": { "type": "string", "enum": [ @@ -3623,6 +3629,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -3634,15 +3641,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -4330,7 +4496,7 @@ "DynamicTargetingKey": { "id": "DynamicTargetingKey", "type": "object", - "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", + "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", "properties": { "kind": { "type": "string", @@ -4937,6 +5103,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -4948,15 +5115,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -6423,7 +6749,7 @@ }, "compatibility": { "type": "string", - "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", "enum": [ "APP", "APP_INTERSTITIAL", @@ -7109,6 +7435,7 @@ "PLANNING_PLACEMENT_PRICING_TYPE_CPA", "PLANNING_PLACEMENT_PRICING_TYPE_CPC", "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" @@ -7120,6 +7447,7 @@ "", "", "", + "", "" ] }, @@ -7181,6 +7509,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -7189,6 +7518,7 @@ "", "", "", + "", "" ] }, @@ -8892,14 +9222,14 @@ "properties": { "browsers": { "type": "array", - "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "Browser" } }, "connectionTypes": { "type": "array", - "description": "Connection types that this ad targets. For each connection type only id is required.The other fields are populated automatically when the ad is inserted or updated.", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", "items": { "$ref": "ConnectionType" } @@ -9033,6 +9363,7 @@ "enum": [ "U1", "U10", + "U100", "U11", "U12", "U13", @@ -9044,15 +9375,174 @@ "U19", "U2", "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", "U8", - "U9" + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -11247,6 +11737,7 @@ "OBJECT_SD_SITE", "OBJECT_SIZE", "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", "OBJECT_USER_PROFILE", "OBJECT_USER_PROFILE_FILTER", "OBJECT_USER_ROLE" @@ -11288,6 +11779,7 @@ "", "", "", + "", "" ], "location": "query" @@ -13243,7 +13735,7 @@ "id": "dfareporting.dynamicTargetingKeys.insert", "path": "userprofiles/{profileId}/dynamicTargetingKeys", "httpMethod": "POST", - "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative or placement.", + "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", "parameters": { "profileId": { "type": "string", @@ -15388,6 +15880,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -15396,6 +15889,7 @@ "", "", "", + "", "" ], "repeated": true, @@ -16023,6 +16517,7 @@ "PRICING_TYPE_CPA", "PRICING_TYPE_CPC", "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", "PRICING_TYPE_FLAT_RATE_CLICKS", "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" ], @@ -16031,6 +16526,7 @@ "", "", "", + "", "" ], "repeated": true, diff --git a/etc/api/dfareporting/v2.6/dfareporting-api.json b/etc/api/dfareporting/v2.6/dfareporting-api.json new file mode 100644 index 0000000000..873000d453 --- /dev/null +++ b/etc/api/dfareporting/v2.6/dfareporting-api.json @@ -0,0 +1,19207 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/kUzYRmhKcAnpiKF3q0AnOrMQGIA\"", + "discoveryVersion": "v1", + "id": "dfareporting:v2.6", + "name": "dfareporting", + "version": "v2.6", + "revision": "20160803", + "title": "DCM/DFA Reporting And Trafficking API", + "description": "Manages your DoubleClick Campaign Manager ad campaigns and reports.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "https://www.google.com/images/icons/product/doubleclick-16.gif", + "x32": "https://www.google.com/images/icons/product/doubleclick-32.gif" + }, + "documentationLink": "https://developers.google.com/doubleclick-advertisers/", + "protocol": "rest", + "baseUrl": "https://www.googleapis.com/dfareporting/v2.6/", + "basePath": "/dfareporting/v2.6/", + "rootUrl": "https://www.googleapis.com/", + "servicePath": "dfareporting/v2.6/", + "batchPath": "batch", + "parameters": { + "alt": { + "type": "string", + "description": "Data format for the response.", + "default": "json", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query" + }, + "userIp": { + "type": "string", + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/ddmconversions": { + "description": "Manage DoubleClick Digital Marketing conversions" + }, + "https://www.googleapis.com/auth/dfareporting": { + "description": "View and manage DoubleClick for Advertisers reports" + }, + "https://www.googleapis.com/auth/dfatrafficking": { + "description": "View and manage your DoubleClick Campaign Manager's (DCM) display ad campaigns" + } + } + } + }, + "schemas": { + "Account": { + "id": "Account", + "type": "object", + "description": "Contains properties of a DCM account.", + "properties": { + "accountPermissionIds": { + "type": "array", + "description": "Account permissions assigned to this account.", + "items": { + "type": "string", + "format": "int64" + } + }, + "accountProfile": { + "type": "string", + "description": "Profile for this account. This is a read-only field that can be left blank.", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "active": { + "type": "boolean", + "description": "Whether this account is active." + }, + "activeAdsLimitTier": { + "type": "string", + "description": "Maximum number of active ads allowed for this account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "activeViewOptOut": { + "type": "boolean", + "description": "Whether to serve creatives with Active View tags. If disabled, viewability data will not be available for any impressions." + }, + "availablePermissionIds": { + "type": "array", + "description": "User role permissions available to the user roles of this account.", + "items": { + "type": "string", + "format": "int64" + } + }, + "countryId": { + "type": "string", + "description": "ID of the country associated with this account.", + "format": "int64" + }, + "currencyId": { + "type": "string", + "description": "ID of currency associated with this account. This is a required field.\nAcceptable values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK", + "format": "int64" + }, + "defaultCreativeSizeId": { + "type": "string", + "description": "Default placement dimensions for this account.", + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of this account." + }, + "id": { + "type": "string", + "description": "ID of this account. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#account\".", + "default": "dfareporting#account" + }, + "locale": { + "type": "string", + "description": "Locale of this account.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil) \n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" + }, + "maximumImageSize": { + "type": "string", + "description": "Maximum image size allowed for this account.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this account. This is a required field, and must be less than 128 characters long and be globally unique." + }, + "nielsenOcrEnabled": { + "type": "boolean", + "description": "Whether campaigns created in this account will be enabled for Nielsen OCR reach ratings by default." + }, + "reportsConfiguration": { + "$ref": "ReportsConfiguration", + "description": "Reporting configuration of this account." + }, + "shareReportsWithTwitter": { + "type": "boolean", + "description": "Share Path to Conversion reports with Twitter." + }, + "teaserSizeLimit": { + "type": "string", + "description": "File size limit in kilobytes of Rich Media teaser creatives. Must be between 1 and 10240.", + "format": "int64" + } + } + }, + "AccountActiveAdSummary": { + "id": "AccountActiveAdSummary", + "type": "object", + "description": "Gets a summary of active ads in an account.", + "properties": { + "accountId": { + "type": "string", + "description": "ID of the account.", + "format": "int64" + }, + "activeAds": { + "type": "string", + "description": "Ads that have been activated for the account", + "format": "int64" + }, + "activeAdsLimitTier": { + "type": "string", + "description": "Maximum number of active ads allowed for the account.", + "enum": [ + "ACTIVE_ADS_TIER_100K", + "ACTIVE_ADS_TIER_200K", + "ACTIVE_ADS_TIER_300K", + "ACTIVE_ADS_TIER_40K", + "ACTIVE_ADS_TIER_500K", + "ACTIVE_ADS_TIER_75K" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "availableAds": { + "type": "string", + "description": "Ads that can be activated for the account.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountActiveAdSummary\".", + "default": "dfareporting#accountActiveAdSummary" + } + } + }, + "AccountPermission": { + "id": "AccountPermission", + "type": "object", + "description": "AccountPermissions contains information about a particular account permission. Some features of DCM require an account permission to be present in the account.", + "properties": { + "accountProfiles": { + "type": "array", + "description": "Account profiles associated with this account permission.\n\nPossible values are:\n- \"ACCOUNT_PROFILE_BASIC\"\n- \"ACCOUNT_PROFILE_STANDARD\"", + "items": { + "type": "string", + "enum": [ + "ACCOUNT_PROFILE_BASIC", + "ACCOUNT_PROFILE_STANDARD" + ], + "enumDescriptions": [ + "", + "" + ] + } + }, + "id": { + "type": "string", + "description": "ID of this account permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermission\".", + "default": "dfareporting#accountPermission" + }, + "level": { + "type": "string", + "description": "Administrative level required to enable this account permission.", + "enum": [ + "ADMINISTRATOR", + "USER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of this account permission." + }, + "permissionGroupId": { + "type": "string", + "description": "Permission group of this account permission.", + "format": "int64" + } + } + }, + "AccountPermissionGroup": { + "id": "AccountPermissionGroup", + "type": "object", + "description": "AccountPermissionGroups contains a mapping of permission group IDs to names. A permission group is a grouping of account permissions.", + "properties": { + "id": { + "type": "string", + "description": "ID of this account permission group.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroup\".", + "default": "dfareporting#accountPermissionGroup" + }, + "name": { + "type": "string", + "description": "Name of this account permission group." + } + } + }, + "AccountPermissionGroupsListResponse": { + "id": "AccountPermissionGroupsListResponse", + "type": "object", + "description": "Account Permission Group List Response", + "properties": { + "accountPermissionGroups": { + "type": "array", + "description": "Account permission group collection.", + "items": { + "$ref": "AccountPermissionGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionGroupsListResponse\".", + "default": "dfareporting#accountPermissionGroupsListResponse" + } + } + }, + "AccountPermissionsListResponse": { + "id": "AccountPermissionsListResponse", + "type": "object", + "description": "Account Permission List Response", + "properties": { + "accountPermissions": { + "type": "array", + "description": "Account permission collection.", + "items": { + "$ref": "AccountPermission" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountPermissionsListResponse\".", + "default": "dfareporting#accountPermissionsListResponse" + } + } + }, + "AccountUserProfile": { + "id": "AccountUserProfile", + "type": "object", + "description": "AccountUserProfiles contains properties of a DCM user profile. This resource is specifically for managing user profiles, whereas UserProfiles is for accessing the API.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this user profile is active. This defaults to false, and must be set true on insert for the user profile to be usable." + }, + "advertiserFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which advertisers are visible to the user profile." + }, + "campaignFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which campaigns are visible to the user profile." + }, + "comments": { + "type": "string", + "description": "Comments for this user profile." + }, + "email": { + "type": "string", + "description": "Email of the user profile. The email addresss must be linked to a Google Account. This field is required on insertion and is read-only after insertion." + }, + "id": { + "type": "string", + "description": "ID of the user profile. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfile\".", + "default": "dfareporting#accountUserProfile" + }, + "locale": { + "type": "string", + "description": "Locale of the user profile. This is a required field.\nAcceptable values are: \n- \"cs\" (Czech) \n- \"de\" (German) \n- \"en\" (English) \n- \"en-GB\" (English United Kingdom) \n- \"es\" (Spanish) \n- \"fr\" (French) \n- \"it\" (Italian) \n- \"ja\" (Japanese) \n- \"ko\" (Korean) \n- \"pl\" (Polish) \n- \"pt-BR\" (Portuguese Brazil)\n- \"ru\" (Russian) \n- \"sv\" (Swedish) \n- \"tr\" (Turkish) \n- \"zh-CN\" (Chinese Simplified) \n- \"zh-TW\" (Chinese Traditional)" + }, + "name": { + "type": "string", + "description": "Name of the user profile. This is a required field. Must be less than 64 characters long, must be globally unique, and cannot contain whitespace or any of the following characters: \"&;\"#%,\"." + }, + "siteFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which sites are visible to the user profile." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of the user profile. This is a read-only field that can be left blank.", + "format": "int64" + }, + "traffickerType": { + "type": "string", + "description": "Trafficker type of this user profile.", + "enum": [ + "EXTERNAL_TRAFFICKER", + "INTERNAL_NON_TRAFFICKER", + "INTERNAL_TRAFFICKER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "userAccessType": { + "type": "string", + "description": "User type of the user profile. This is a read-only field that can be left blank.", + "enum": [ + "INTERNAL_ADMINISTRATOR", + "NORMAL_USER", + "READ_ONLY_SUPER_USER", + "SUPER_USER" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "userRoleFilter": { + "$ref": "ObjectFilter", + "description": "Filter that describes which user roles are visible to the user profile." + }, + "userRoleId": { + "type": "string", + "description": "User role ID of the user profile. This is a required field.", + "format": "int64" + } + } + }, + "AccountUserProfilesListResponse": { + "id": "AccountUserProfilesListResponse", + "type": "object", + "description": "Account User Profile List Response", + "properties": { + "accountUserProfiles": { + "type": "array", + "description": "Account user profile collection.", + "items": { + "$ref": "AccountUserProfile" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountUserProfilesListResponse\".", + "default": "dfareporting#accountUserProfilesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AccountsListResponse": { + "id": "AccountsListResponse", + "type": "object", + "description": "Account List Response", + "properties": { + "accounts": { + "type": "array", + "description": "Account collection.", + "items": { + "$ref": "Account" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#accountsListResponse\".", + "default": "dfareporting#accountsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "Activities": { + "id": "Activities", + "type": "object", + "description": "Represents an activity group.", + "properties": { + "filters": { + "type": "array", + "description": "List of activity filters. The dimension values need to be all either of type \"dfa:activity\" or \"dfa:activityGroup\".", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#activities.", + "default": "dfareporting#activities" + }, + "metricNames": { + "type": "array", + "description": "List of names of floodlight activity metrics.", + "items": { + "type": "string" + } + } + } + }, + "Ad": { + "id": "Ad", + "type": "object", + "description": "Contains properties of a DCM ad.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this ad. This is a read-only field that can be left blank.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this ad is active." + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this ad. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this ad is archived." + }, + "audienceSegmentId": { + "type": "string", + "description": "Audience segment ID that is being targeted for this ad. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64" + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this ad. This is a required field on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL for this ad. This is a required field on insertion. Applicable when type is AD_SERVING_CLICK_TRACKER." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix properties for this ad. Applies to the URL in the ad or (if overriding ad properties) the URL in the creative." + }, + "comments": { + "type": "string", + "description": "Comments for this ad." + }, + "compatibility": { + "type": "string", + "description": "Compatibility of this ad. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to either rendering on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are only used for existing default ads. New mobile placements must be assigned DISPLAY or DISPLAY_INTERSTITIAL and default ads created for those placements will be limited to those compatibility types. IN_STREAM_VIDEO refers to rendering in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this ad. This is a read-only field." + }, + "creativeGroupAssignments": { + "type": "array", + "description": "Creative group assignments for this ad. Applicable when type is AD_SERVING_CLICK_TRACKER. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + } + }, + "creativeRotation": { + "$ref": "CreativeRotation", + "description": "Creative rotation for this ad. Applicable when type is AD_SERVING_DEFAULT_AD, AD_SERVING_STANDARD_AD, or AD_SERVING_TRACKING. When type is AD_SERVING_DEFAULT_AD, this field should have exactly one creativeAssignment." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Default click-through event tag properties for this ad." + }, + "deliverySchedule": { + "$ref": "DeliverySchedule", + "description": "Delivery schedule information for this ad. Applicable when type is AD_SERVING_STANDARD_AD or AD_SERVING_TRACKING. This field along with subfields priority and impressionRatio are required on insertion when type is AD_SERVING_STANDARD_AD." + }, + "dynamicClickTracker": { + "type": "boolean", + "description": "Whether this ad is a dynamic click tracker. Applicable when type is AD_SERVING_CLICK_TRACKER. This is a required field on insert, and is read-only after insert." + }, + "endTime": { + "type": "string", + "description": "Date and time that this ad should stop serving. Must be later than the start time. This is a required field on insertion.", + "format": "date-time" + }, + "eventTagOverrides": { + "type": "array", + "description": "Event tag overrides for this ad.", + "items": { + "$ref": "EventTagOverride" + } + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "id": { + "type": "string", + "description": "ID of this ad. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this ad. This is a read-only, auto-generated field." + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ad\".", + "default": "dfareporting#ad" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this ad. This is a read-only field." + }, + "name": { + "type": "string", + "description": "Name of this ad. This is a required field and must be less than 256 characters long." + }, + "placementAssignments": { + "type": "array", + "description": "Placement assignments for this ad.", + "items": { + "$ref": "PlacementAssignment" + } + }, + "remarketingListExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting expression for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "size": { + "$ref": "Size", + "description": "Size of this ad. Applicable when type is AD_SERVING_DEFAULT_AD." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether this ad is ssl compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether this ad requires ssl. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "startTime": { + "type": "string", + "description": "Date and time that this ad should start serving. If creating an ad, this field must be a time in the future. This is a required field on insertion.", + "format": "date-time" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this ad. This is a read-only field that can be left blank.", + "format": "int64" + }, + "targetingTemplateId": { + "type": "string", + "description": "Targeting template ID, used to apply preconfigured targeting information to this ad. This cannot be set while any of dayPartTargeting, geoTargeting, keyValueTargetingExpression, languageTargeting, remarketingListExpression, or technologyTargeting are set. Applicable when type is AD_SERVING_STANDARD_AD.", + "format": "int64" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting information for this ad. This field must be left blank if the ad is using a targeting template. Applicable when type is AD_SERVING_STANDARD_AD." + }, + "type": { + "type": "string", + "description": "Type of ad. This is a required field on insertion. Note that default ads (AD_SERVING_DEFAULT_AD) cannot be created directly (see Creative resource).", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "AdSlot": { + "id": "AdSlot", + "type": "object", + "description": "Ad Slot", + "properties": { + "comment": { + "type": "string", + "description": "Comment for this ad slot." + }, + "compatibility": { + "type": "string", + "description": "Ad slot compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop, mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "height": { + "type": "string", + "description": "Height of this ad slot.", + "format": "int64" + }, + "linkedPlacementId": { + "type": "string", + "description": "ID of the placement from an external platform that is linked to this ad slot.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this ad slot." + }, + "paymentSourceType": { + "type": "string", + "description": "Payment source type of this ad slot.", + "enum": [ + "PLANNING_PAYMENT_SOURCE_TYPE_AGENCY_PAID", + "PLANNING_PAYMENT_SOURCE_TYPE_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "primary": { + "type": "boolean", + "description": "Primary ad slot of a roadblock inventory item." + }, + "width": { + "type": "string", + "description": "Width of this ad slot.", + "format": "int64" + } + } + }, + "AdsListResponse": { + "id": "AdsListResponse", + "type": "object", + "description": "Ad List Response", + "properties": { + "ads": { + "type": "array", + "description": "Ad collection.", + "items": { + "$ref": "Ad" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#adsListResponse\".", + "default": "dfareporting#adsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "Advertiser": { + "id": "Advertiser", + "type": "object", + "description": "Contains properties of a DCM advertiser.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserGroupId": { + "type": "string", + "description": "ID of the advertiser group this advertiser belongs to. You can group advertisers for reporting purposes, allowing you to see aggregated information for all advertisers in each group.", + "format": "int64" + }, + "clickThroughUrlSuffix": { + "type": "string", + "description": "Suffix added to click-through URL of ad creative associations under this advertiser. Must be less than 129 characters long." + }, + "defaultClickThroughEventTagId": { + "type": "string", + "description": "ID of the click-through event tag to apply by default to the landing pages of this advertiser's campaigns.", + "format": "int64" + }, + "defaultEmail": { + "type": "string", + "description": "Default email address used in sender field for tag emails." + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this advertiser. The floodlight configuration ID will be created automatically, so on insert this field should be left blank. This field can be set to another advertiser's floodlight configuration ID in order to share that advertiser's floodlight configuration with this advertiser, so long as: \n- This advertiser's original floodlight configuration is not already associated with floodlight activities or floodlight activity groups. \n- This advertiser's original floodlight configuration is not already shared with another advertiser.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this advertiser. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this advertiser. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiser\".", + "default": "dfareporting#advertiser" + }, + "name": { + "type": "string", + "description": "Name of this advertiser. This is a required field and must be less than 256 characters long and unique among advertisers of the same account." + }, + "originalFloodlightConfigurationId": { + "type": "string", + "description": "Original floodlight configuration before any sharing occurred. Set the floodlightConfigurationId of this advertiser to originalFloodlightConfigurationId to unshare the advertiser's current floodlight configuration. You cannot unshare an advertiser's floodlight configuration if the shared configuration has activities associated with any campaign or placement.", + "format": "int64" + }, + "status": { + "type": "string", + "description": "Status of this advertiser.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this advertiser.This is a read-only field that can be left blank.", + "format": "int64" + }, + "suspended": { + "type": "boolean", + "description": "Suspension status of this advertiser." + } + } + }, + "AdvertiserGroup": { + "id": "AdvertiserGroup", + "type": "object", + "description": "Groups advertisers together so that reports can be generated for the entire group at once.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this advertiser group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this advertiser group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroup\".", + "default": "dfareporting#advertiserGroup" + }, + "name": { + "type": "string", + "description": "Name of this advertiser group. This is a required field and must be less than 256 characters long and unique among advertiser groups of the same account." + } + } + }, + "AdvertiserGroupsListResponse": { + "id": "AdvertiserGroupsListResponse", + "type": "object", + "description": "Advertiser Group List Response", + "properties": { + "advertiserGroups": { + "type": "array", + "description": "Advertiser group collection.", + "items": { + "$ref": "AdvertiserGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertiserGroupsListResponse\".", + "default": "dfareporting#advertiserGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AdvertisersListResponse": { + "id": "AdvertisersListResponse", + "type": "object", + "description": "Advertiser List Response", + "properties": { + "advertisers": { + "type": "array", + "description": "Advertiser collection.", + "items": { + "$ref": "Advertiser" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#advertisersListResponse\".", + "default": "dfareporting#advertisersListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "AudienceSegment": { + "id": "AudienceSegment", + "type": "object", + "description": "Audience Segment.", + "properties": { + "allocation": { + "type": "integer", + "description": "Weight allocated to this segment. Must be between 1 and 1000. The weight assigned will be understood in proportion to the weights assigned to other segments in the same segment group.", + "format": "int32" + }, + "id": { + "type": "string", + "description": "ID of this audience segment. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this audience segment. This is a required field and must be less than 65 characters long." + } + } + }, + "AudienceSegmentGroup": { + "id": "AudienceSegmentGroup", + "type": "object", + "description": "Audience Segment Group.", + "properties": { + "audienceSegments": { + "type": "array", + "description": "Audience segments assigned to this group. The number of segments must be between 2 and 100.", + "items": { + "$ref": "AudienceSegment" + } + }, + "id": { + "type": "string", + "description": "ID of this audience segment group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this audience segment group. This is a required field and must be less than 65 characters long." + } + } + }, + "Browser": { + "id": "Browser", + "type": "object", + "description": "Contains information about a browser that can be targeted by ads.", + "properties": { + "browserVersionId": { + "type": "string", + "description": "ID referring to this grouping of browser and version numbers. This is the ID used for targeting.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this browser. This is the ID used when generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browser\".", + "default": "dfareporting#browser" + }, + "majorVersion": { + "type": "string", + "description": "Major version number (leftmost number) of this browser. For example, for Chrome 5.0.376.86 beta, this field should be set to 5. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." + }, + "minorVersion": { + "type": "string", + "description": "Minor version number (number after first dot on left) of this browser. For example, for Chrome 5.0.375.86 beta, this field should be set to 0. An asterisk (*) may be used to target any version number, and a question mark (?) may be used to target cases where the version number cannot be identified. For example, Chrome *.* targets any version of Chrome: 1.2, 2.5, 3.5, and so on. Chrome 3.* targets Chrome 3.1, 3.5, but not 4.0. Firefox ?.? targets cases where the ad server knows the browser is Firefox but can't tell which version it is." + }, + "name": { + "type": "string", + "description": "Name of this browser." + } + } + }, + "BrowsersListResponse": { + "id": "BrowsersListResponse", + "type": "object", + "description": "Browser List Response", + "properties": { + "browsers": { + "type": "array", + "description": "Browser collection.", + "items": { + "$ref": "Browser" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#browsersListResponse\".", + "default": "dfareporting#browsersListResponse" + } + } + }, + "Campaign": { + "id": "Campaign", + "type": "object", + "description": "Contains properties of a DCM campaign.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64" + }, + "additionalCreativeOptimizationConfigurations": { + "type": "array", + "description": "Additional creative optimization configurations for the campaign.", + "items": { + "$ref": "CreativeOptimizationConfiguration" + } + }, + "advertiserGroupId": { + "type": "string", + "description": "Advertiser group ID of the associated advertiser.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this campaign. This is a required field.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the advertiser ID of this campaign. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this campaign has been archived." + }, + "audienceSegmentGroups": { + "type": "array", + "description": "Audience segment groups assigned to this campaign. Cannot have more than 300 segment groups.", + "items": { + "$ref": "AudienceSegmentGroup" + } + }, + "billingInvoiceCode": { + "type": "string", + "description": "Billing invoice code included in the DCM client billing invoices associated with the campaign." + }, + "clickThroughUrlSuffixProperties": { + "$ref": "ClickThroughUrlSuffixProperties", + "description": "Click-through URL suffix override properties for this campaign." + }, + "comment": { + "type": "string", + "description": "Arbitrary comments about this campaign. Must be less than 256 characters long." + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this campaign. This is a read-only field." + }, + "creativeGroupIds": { + "type": "array", + "description": "List of creative group IDs that are assigned to the campaign.", + "items": { + "type": "string", + "format": "int64" + } + }, + "creativeOptimizationConfiguration": { + "$ref": "CreativeOptimizationConfiguration", + "description": "Creative optimization configuration for the campaign." + }, + "defaultClickThroughEventTagProperties": { + "$ref": "DefaultClickThroughEventTagProperties", + "description": "Click-through event tag ID override properties for this campaign." + }, + "endDate": { + "type": "string", + "description": "Date on which the campaign will stop running. On insert, the end date must be today or a future date. The end date must be later than or be the same as the start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective campaign run date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This is a required field.", + "format": "date" + }, + "eventTagOverrides": { + "type": "array", + "description": "Overrides that can be used to activate or deactivate advertiser event tags.", + "items": { + "$ref": "EventTagOverride" + } + }, + "externalId": { + "type": "string", + "description": "External ID for this campaign." + }, + "id": { + "type": "string", + "description": "ID of this campaign. This is a read-only auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this campaign. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaign\".", + "default": "dfareporting#campaign" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this campaign. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for the campaign." + }, + "name": { + "type": "string", + "description": "Name of this campaign. This is a required field and must be less than 256 characters long and unique among campaigns of the same advertiser." + }, + "nielsenOcrEnabled": { + "type": "boolean", + "description": "Whether Nielsen reports are enabled for this campaign." + }, + "startDate": { + "type": "string", + "description": "Date on which the campaign starts running. The start date can be any date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This is a required field.", + "format": "date" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this campaign. This is a read-only field that can be left blank.", + "format": "int64" + }, + "traffickerEmails": { + "type": "array", + "description": "Campaign trafficker contact emails.", + "items": { + "type": "string" + } + } + } + }, + "CampaignCreativeAssociation": { + "id": "CampaignCreativeAssociation", + "type": "object", + "description": "Identifies a creative which has been associated with a given campaign.", + "properties": { + "creativeId": { + "type": "string", + "description": "ID of the creative associated with the campaign. This is a required field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociation\".", + "default": "dfareporting#campaignCreativeAssociation" + } + } + }, + "CampaignCreativeAssociationsListResponse": { + "id": "CampaignCreativeAssociationsListResponse", + "type": "object", + "description": "Campaign Creative Association List Response", + "properties": { + "campaignCreativeAssociations": { + "type": "array", + "description": "Campaign creative association collection", + "items": { + "$ref": "CampaignCreativeAssociation" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignCreativeAssociationsListResponse\".", + "default": "dfareporting#campaignCreativeAssociationsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CampaignsListResponse": { + "id": "CampaignsListResponse", + "type": "object", + "description": "Campaign List Response", + "properties": { + "campaigns": { + "type": "array", + "description": "Campaign collection.", + "items": { + "$ref": "Campaign" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#campaignsListResponse\".", + "default": "dfareporting#campaignsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "ChangeLog": { + "id": "ChangeLog", + "type": "object", + "description": "Describes a change that a user has made to a resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of the modified object.", + "format": "int64" + }, + "action": { + "type": "string", + "description": "Action which caused the change." + }, + "changeTime": { + "type": "string", + "description": "Time when the object was modified.", + "format": "date-time" + }, + "fieldName": { + "type": "string", + "description": "Field name of the object which changed." + }, + "id": { + "type": "string", + "description": "ID of this change log.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLog\".", + "default": "dfareporting#changeLog" + }, + "newValue": { + "type": "string", + "description": "New value of the object field." + }, + "objectId": { + "type": "string", + "description": "ID of the object of this change log. The object could be a campaign, placement, ad, or other type.", + "format": "int64" + }, + "objectType": { + "type": "string", + "description": "Object type of the change log." + }, + "oldValue": { + "type": "string", + "description": "Old value of the object field." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of the modified object.", + "format": "int64" + }, + "transactionId": { + "type": "string", + "description": "Transaction ID of this change log. When a single API call results in many changes, each change will have a separate ID in the change log but will share the same transactionId.", + "format": "int64" + }, + "userProfileId": { + "type": "string", + "description": "ID of the user who modified the object.", + "format": "int64" + }, + "userProfileName": { + "type": "string", + "description": "User profile name of the user who modified the object." + } + } + }, + "ChangeLogsListResponse": { + "id": "ChangeLogsListResponse", + "type": "object", + "description": "Change Log List Response", + "properties": { + "changeLogs": { + "type": "array", + "description": "Change log collection.", + "items": { + "$ref": "ChangeLog" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#changeLogsListResponse\".", + "default": "dfareporting#changeLogsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CitiesListResponse": { + "id": "CitiesListResponse", + "type": "object", + "description": "City List Response", + "properties": { + "cities": { + "type": "array", + "description": "City collection.", + "items": { + "$ref": "City" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#citiesListResponse\".", + "default": "dfareporting#citiesListResponse" + } + } + }, + "City": { + "id": "City", + "type": "object", + "description": "Contains information about a city that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this city belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this city belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this city. This is the ID used for targeting and generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#city\".", + "default": "dfareporting#city" + }, + "metroCode": { + "type": "string", + "description": "Metro region code of the metro region (DMA) to which this city belongs." + }, + "metroDmaId": { + "type": "string", + "description": "ID of the metro region (DMA) to which this city belongs.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this city." + }, + "regionCode": { + "type": "string", + "description": "Region code of the region to which this city belongs." + }, + "regionDartId": { + "type": "string", + "description": "DART ID of the region to which this city belongs.", + "format": "int64" + } + } + }, + "ClickTag": { + "id": "ClickTag", + "type": "object", + "description": "Creative Click Tag.", + "properties": { + "eventName": { + "type": "string", + "description": "Advertiser event name associated with the click tag. This field is used by DISPLAY_IMAGE_GALLERY and HTML5_BANNER creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "name": { + "type": "string", + "description": "Parameter name for the specified click tag. For DISPLAY_IMAGE_GALLERY creative assets, this field must match the value of the creative asset's creativeAssetId.name field." + }, + "value": { + "type": "string", + "description": "Parameter value for the specified click tag. This field contains a click-through url." + } + } + }, + "ClickThroughUrl": { + "id": "ClickThroughUrl", + "type": "object", + "description": "Click-through URL", + "properties": { + "computedClickThroughUrl": { + "type": "string", + "description": "Read-only convenience field representing the actual URL that will be used for this click-through. The URL is computed as follows: \n- If defaultLandingPage is enabled then the campaign's default landing page URL is assigned to this field.\n- If defaultLandingPage is not enabled and a landingPageId is specified then that landing page's URL is assigned to this field.\n- If neither of the above cases apply, then the customClickThroughUrl is assigned to this field." + }, + "customClickThroughUrl": { + "type": "string", + "description": "Custom click-through URL. Applicable if the defaultLandingPage field is set to false and the landingPageId field is left unset." + }, + "defaultLandingPage": { + "type": "boolean", + "description": "Whether the campaign default landing page is used." + }, + "landingPageId": { + "type": "string", + "description": "ID of the landing page for the click-through URL. Applicable if the defaultLandingPage field is set to false.", + "format": "int64" + } + } + }, + "ClickThroughUrlSuffixProperties": { + "id": "ClickThroughUrlSuffixProperties", + "type": "object", + "description": "Click Through URL Suffix settings.", + "properties": { + "clickThroughUrlSuffix": { + "type": "string", + "description": "Click-through URL suffix to apply to all ads in this entity's scope. Must be less than 128 characters long." + }, + "overrideInheritedSuffix": { + "type": "boolean", + "description": "Whether this entity should override the inherited click-through URL suffix with its own defined value." + } + } + }, + "CompanionClickThroughOverride": { + "id": "CompanionClickThroughOverride", + "type": "object", + "description": "Companion Click-through override.", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this companion click-through override." + }, + "creativeId": { + "type": "string", + "description": "ID of the creative for this companion click-through override.", + "format": "int64" + } + } + }, + "CompatibleFields": { + "id": "CompatibleFields", + "type": "object", + "description": "Represents a response to the queryCompatibleFields method.", + "properties": { + "crossDimensionReachReportCompatibleFields": { + "$ref": "CrossDimensionReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\"." + }, + "floodlightReportCompatibleFields": { + "$ref": "FloodlightReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"FLOODLIGHT\"." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#compatibleFields.", + "default": "dfareporting#compatibleFields" + }, + "pathToConversionReportCompatibleFields": { + "$ref": "PathToConversionReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\"." + }, + "reachReportCompatibleFields": { + "$ref": "ReachReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"REACH\"." + }, + "reportCompatibleFields": { + "$ref": "ReportCompatibleFields", + "description": "Contains items that are compatible to be selected for a report of type \"STANDARD\"." + } + } + }, + "ConnectionType": { + "id": "ConnectionType", + "type": "object", + "description": "Contains information about an internet connection type that can be targeted by ads. Clients can use the connection type to target mobile vs. broadband users.", + "properties": { + "id": { + "type": "string", + "description": "ID of this connection type.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionType\".", + "default": "dfareporting#connectionType" + }, + "name": { + "type": "string", + "description": "Name of this connection type." + } + } + }, + "ConnectionTypesListResponse": { + "id": "ConnectionTypesListResponse", + "type": "object", + "description": "Connection Type List Response", + "properties": { + "connectionTypes": { + "type": "array", + "description": "Collection of connection types such as broadband and mobile.", + "items": { + "$ref": "ConnectionType" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#connectionTypesListResponse\".", + "default": "dfareporting#connectionTypesListResponse" + } + } + }, + "ContentCategoriesListResponse": { + "id": "ContentCategoriesListResponse", + "type": "object", + "description": "Content Category List Response", + "properties": { + "contentCategories": { + "type": "array", + "description": "Content category collection.", + "items": { + "$ref": "ContentCategory" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategoriesListResponse\".", + "default": "dfareporting#contentCategoriesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "ContentCategory": { + "id": "ContentCategory", + "type": "object", + "description": "Organizes placements according to the contents of their associated webpages.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this content category. This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this content category. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#contentCategory\".", + "default": "dfareporting#contentCategory" + }, + "name": { + "type": "string", + "description": "Name of this content category. This is a required field and must be less than 256 characters long and unique among content categories of the same account." + } + } + }, + "Conversion": { + "id": "Conversion", + "type": "object", + "description": "A Conversion represents when a user successfully performs a desired action after seeing an ad.", + "properties": { + "childDirectedTreatment": { + "type": "boolean", + "description": "Whether the conversion was directed toward children." + }, + "customVariables": { + "type": "array", + "description": "Custom floodlight variables.", + "items": { + "$ref": "CustomFloodlightVariable" + } + }, + "encryptedUserId": { + "type": "string", + "description": "The alphanumeric encrypted user ID. When set, encryptionInfo should also be specified. This field is mutually exclusive with encryptedUserIdCandidates[] and mobileDeviceId. This or encryptedUserIdCandidates[] or mobileDeviceId is a required field." + }, + "encryptedUserIdCandidates": { + "type": "array", + "description": "A list of the alphanumeric encrypted user IDs. Any user ID with exposure prior to the conversion timestamp will be used in the inserted conversion. If no such user ID is found then the conversion will be rejected with NO_COOKIE_MATCH_FOUND error. When set, encryptionInfo should also be specified. This field should only be used when calling conversions.batchinsert. This field is mutually exclusive with encryptedUserId and mobileDeviceId. This or encryptedUserId or mobileDeviceId is a required field.", + "items": { + "type": "string" + } + }, + "floodlightActivityId": { + "type": "string", + "description": "Floodlight Activity ID of this conversion. This is a required field.", + "format": "int64" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight Configuration ID of this conversion. This is a required field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversion\".", + "default": "dfareporting#conversion" + }, + "limitAdTracking": { + "type": "boolean", + "description": "Whether the user has Limit Ad Tracking set." + }, + "mobileDeviceId": { + "type": "string", + "description": "The mobile device ID. This field is mutually exclusive with encryptedUserId and encryptedUserIdCandidates[]. This or encryptedUserId or encryptedUserIdCandidates[] is a required field." + }, + "ordinal": { + "type": "string", + "description": "The ordinal of the conversion. Use this field to control how conversions of the same user and day are de-duplicated. This is a required field." + }, + "quantity": { + "type": "string", + "description": "The quantity of the conversion.", + "format": "int64" + }, + "timestampMicros": { + "type": "string", + "description": "The timestamp of conversion, in Unix epoch micros. This is a required field.", + "format": "int64" + }, + "value": { + "type": "number", + "description": "The value of the conversion.", + "format": "double" + } + } + }, + "ConversionError": { + "id": "ConversionError", + "type": "object", + "description": "The error code and description for a conversion that failed to insert or update.", + "properties": { + "code": { + "type": "string", + "description": "The error code.", + "enum": [ + "INTERNAL", + "INVALID_ARGUMENT", + "NOT_FOUND", + "PERMISSION_DENIED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionError\".", + "default": "dfareporting#conversionError" + }, + "message": { + "type": "string", + "description": "A description of the error." + } + } + }, + "ConversionStatus": { + "id": "ConversionStatus", + "type": "object", + "description": "The original conversion that was inserted or updated and whether there were any errors.", + "properties": { + "conversion": { + "$ref": "Conversion", + "description": "The original conversion that was inserted or updated." + }, + "errors": { + "type": "array", + "description": "A list of errors related to this conversion.", + "items": { + "$ref": "ConversionError" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionStatus\".", + "default": "dfareporting#conversionStatus" + } + } + }, + "ConversionsBatchInsertRequest": { + "id": "ConversionsBatchInsertRequest", + "type": "object", + "description": "Insert Conversions Request.", + "properties": { + "conversions": { + "type": "array", + "description": "The set of conversions to insert.", + "items": { + "$ref": "Conversion" + } + }, + "encryptionInfo": { + "$ref": "EncryptionInfo", + "description": "Describes how encryptedUserId or encryptedUserIdCandidates[] is encrypted. This is a required field if encryptedUserId or encryptedUserIdCandidates[] is used." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertRequest\".", + "default": "dfareporting#conversionsBatchInsertRequest" + } + } + }, + "ConversionsBatchInsertResponse": { + "id": "ConversionsBatchInsertResponse", + "type": "object", + "description": "Insert Conversions Response.", + "properties": { + "hasFailures": { + "type": "boolean", + "description": "Indicates that some or all conversions failed to insert." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#conversionsBatchInsertResponse\".", + "default": "dfareporting#conversionsBatchInsertResponse" + }, + "status": { + "type": "array", + "description": "The status of each conversion's insertion status. The status is returned in the same order that conversions are inserted.", + "items": { + "$ref": "ConversionStatus" + } + } + } + }, + "CountriesListResponse": { + "id": "CountriesListResponse", + "type": "object", + "description": "Country List Response", + "properties": { + "countries": { + "type": "array", + "description": "Country collection.", + "items": { + "$ref": "Country" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#countriesListResponse\".", + "default": "dfareporting#countriesListResponse" + } + } + }, + "Country": { + "id": "Country", + "type": "object", + "description": "Contains information about a country that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code." + }, + "dartId": { + "type": "string", + "description": "DART ID of this country. This is the ID used for targeting and generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#country\".", + "default": "dfareporting#country" + }, + "name": { + "type": "string", + "description": "Name of this country." + }, + "sslEnabled": { + "type": "boolean", + "description": "Whether ad serving supports secure servers in this country." + } + } + }, + "Creative": { + "id": "Creative", + "type": "object", + "description": "Contains properties of a Creative.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether the creative is active. Applicable to all creative types." + }, + "adParameters": { + "type": "string", + "description": "Ad parameters user for VPAID creative. This is a read-only field. Applicable to the following creative types: all VPAID." + }, + "adTagKeys": { + "type": "array", + "description": "Keywords for a Rich Media creative. Keywords let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use keywords to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + } + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative. This is a required field. Applicable to all creative types.", + "format": "int64" + }, + "allowScriptAccess": { + "type": "boolean", + "description": "Whether script access is allowed for this creative. This is a read-only and deprecated field which will automatically be set to true on update. Applicable to the following creative types: FLASH_INPAGE." + }, + "archived": { + "type": "boolean", + "description": "Whether the creative is archived. Applicable to all creative types." + }, + "artworkType": { + "type": "string", + "description": "Type of artwork used for the creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "authoringSource": { + "type": "string", + "description": "Source application where creative was authored. Presently, only DBM authored creatives will have this field set. Applicable to all creative types.", + "enum": [ + "CREATIVE_AUTHORING_SOURCE_DBM", + "CREATIVE_AUTHORING_SOURCE_DCM", + "CREATIVE_AUTHORING_SOURCE_STUDIO" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "authoringTool": { + "type": "string", + "description": "Authoring tool for HTML5 banner creatives. This is a read-only field. Applicable to the following creative types: HTML5_BANNER.", + "enum": [ + "NINJA", + "SWIFFY" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "auto_advance_images": { + "type": "boolean", + "description": "Whether images are automatically advanced for image gallery creatives. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY." + }, + "backgroundColor": { + "type": "string", + "description": "The 6-character HTML color code, beginning with #, for the background of the window area where the Flash file is displayed. Default is white. Applicable to the following creative types: FLASH_INPAGE." + }, + "backupImageClickThroughUrl": { + "type": "string", + "description": "Click-through URL for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "backupImageFeatures": { + "type": "array", + "description": "List of feature dependencies that will cause a backup image to be served if the browser that serves the ad does not support them. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative asset correctly. This field is initially auto-generated to contain all features detected by DCM for all the assets of this creative and can then be modified by the client. To reset this field, copy over all the creativeAssets' detected features. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "backupImageReportingLabel": { + "type": "string", + "description": "Reporting label used for HTML5 banner backup image. Applicable to the following creative types: DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "backupImageTargetWindow": { + "$ref": "TargetWindow", + "description": "Target window for backup image. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "clickTags": { + "type": "array", + "description": "Click tags of the creative. For DISPLAY, FLASH_INPAGE, and HTML5_BANNER creatives, this is a subset of detected click tags for the assets associated with this creative. After creating a flash asset, detected click tags will be returned in the creativeAssetMetadata. When inserting the creative, populate the creative clickTags field using the creativeAssetMetadata.clickTags field. For DISPLAY_IMAGE_GALLERY creatives, there should be exactly one entry in this list for each image creative asset. A click tag is matched with a corresponding creative asset by matching the clickTag.name field with the creativeAsset.assetIdentifier.name field. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "ClickTag" + } + }, + "commercialId": { + "type": "string", + "description": "Industry standard ID assigned to creative for reach and frequency. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "companionCreatives": { + "type": "array", + "description": "List of companion creatives assigned to an in-Stream videocreative. Acceptable values include IDs of existing flash and image creatives. Applicable to the following creative types: all VPAID and all INSTREAM_VIDEO with dynamicAssetSelection set to false.", + "items": { + "type": "string", + "format": "int64" + } + }, + "compatibility": { + "type": "array", + "description": "Compatibilities associated with this creative. This is a read-only field. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices or in mobile apps for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. Only pre-existing creatives may have these compatibilities since new creatives will either be assigned DISPLAY or DISPLAY_INTERSTITIAL instead. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. Applicable to all creative types.\n\nAcceptable values are:\n- \"APP\"\n- \"APP_INTERSTITIAL\"\n- \"IN_STREAM_VIDEO\"\n- \"DISPLAY\"\n- \"DISPLAY_INTERSTITIAL\"", + "items": { + "type": "string", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + }, + "convertFlashToHtml5": { + "type": "boolean", + "description": "Whether Flash assets associated with the creative need to be automatically converted to HTML5. This flag is enabled by default and users can choose to disable it if they don't want the system to generate and use HTML5 asset for this creative. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "counterCustomEvents": { + "type": "array", + "description": "List of counter events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "creativeAssetSelection": { + "$ref": "CreativeAssetSelection", + "description": "Required if dynamicAssetSelection is true." + }, + "creativeAssets": { + "type": "array", + "description": "Assets associated with a creative. Applicable to all but the following creative types: INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and REDIRECT", + "items": { + "$ref": "CreativeAsset" + } + }, + "creativeFieldAssignments": { + "type": "array", + "description": "Creative field assignments for this creative. Applicable to all creative types.", + "items": { + "$ref": "CreativeFieldAssignment" + } + }, + "customKeyValues": { + "type": "array", + "description": "Custom key-values for a Rich Media creative. Key-values let you customize the creative settings of a Rich Media ad running on your site without having to contact the advertiser. You can use key-values to dynamically change the look or functionality of a creative. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "items": { + "type": "string" + } + }, + "dynamicAssetSelection": { + "type": "boolean", + "description": "Set this to true to enable the use of rules to target individual assets in this creative. When set to true creativeAssetSelection must be set. This also controls asset-level companions. When this is true, companion creatives should be assigned to creative assets. Learn more. Applicable to INSTREAM_VIDEO creatives." + }, + "exitCustomEvents": { + "type": "array", + "description": "List of exit events configured for the creative. For DISPLAY and DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags, For DISPLAY, an event is also created from the backupImageReportingLabel. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "fsCommand": { + "$ref": "FsCommand", + "description": "OpenWindow FSCommand of this creative. This lets the SWF file communicate with either Flash Player or the program hosting Flash Player, such as a web browser. This is only triggered if allowScriptAccess field is true. Applicable to the following creative types: FLASH_INPAGE." + }, + "htmlCode": { + "type": "string", + "description": "HTML code for the creative. This is a required field when applicable. This field is ignored if htmlCodeLocked is false. Applicable to the following creative types: all CUSTOM, FLASH_INPAGE, and HTML5_BANNER, and all RICH_MEDIA." + }, + "htmlCodeLocked": { + "type": "boolean", + "description": "Whether HTML code is DCM-generated or manually entered. Set to true to ignore changes to htmlCode. Applicable to the following creative types: FLASH_INPAGE and HTML5_BANNER." + }, + "id": { + "type": "string", + "description": "ID of this creative. This is a read-only, auto-generated field. Applicable to all creative types.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creative\".", + "default": "dfareporting#creative" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Creative last modification information. This is a read-only field. Applicable to all creative types." + }, + "latestTraffickedCreativeId": { + "type": "string", + "description": "Latest Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of the creative. This is a required field and must be less than 256 characters long. Applicable to all creative types." + }, + "overrideCss": { + "type": "string", + "description": "Override CSS value for rich media creatives. Applicable to the following creative types: all RICH_MEDIA." + }, + "redirectUrl": { + "type": "string", + "description": "URL of hosted image or hosted video or another ad tag. For INSTREAM_VIDEO_REDIRECT creatives this is the in-stream video redirect URL. The standard for a VAST (Video Ad Serving Template) ad response allows for a redirect link to another VAST 2.0 or 3.0 call. This is a required field when applicable. Applicable to the following creative types: DISPLAY_REDIRECT, INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO_REDIRECT" + }, + "renderingId": { + "type": "string", + "description": "ID of current rendering version. This is a read-only field. Applicable to all creative types.", + "format": "int64" + }, + "renderingIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the rendering ID of this creative. This is a read-only field. Applicable to all creative types." + }, + "requiredFlashPluginVersion": { + "type": "string", + "description": "The minimum required Flash plugin version for this creative. For example, 11.2.202.235. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID." + }, + "requiredFlashVersion": { + "type": "integer", + "description": "The internal Flash version for this creative as calculated by DoubleClick Studio. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32" + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative. When inserting or updating a creative either the size ID field or size width and height fields can be used. This is a required field when applicable; however for IMAGE, FLASH_INPAGE creatives, and for DISPLAY creatives with a primary asset of type HTML_IMAGE, if left blank, this field will be automatically set using the actual size of the associated image assets. Applicable to the following creative types: DISPLAY, DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA." + }, + "skippable": { + "type": "boolean", + "description": "Whether the user can choose to skip the creative. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the creative is SSL-compliant. This is a read-only field. Applicable to all creative types." + }, + "sslOverride": { + "type": "boolean", + "description": "Whether creative should be treated as SSL compliant even if the system scan shows it's not. Applicable to all creative types." + }, + "studioAdvertiserId": { + "type": "string", + "description": "Studio advertiser ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "studioCreativeId": { + "type": "string", + "description": "Studio creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "studioTraffickedCreativeId": { + "type": "string", + "description": "Studio trafficked creative ID associated with rich media and VPAID creatives. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative. This field, if left unset, will be auto-generated for both insert and update operations. Applicable to all creative types.", + "format": "int64" + }, + "thirdPartyBackupImageImpressionsUrl": { + "type": "string", + "description": "Third-party URL used to record backup image impressions. Applicable to the following creative types: all RICH_MEDIA." + }, + "thirdPartyRichMediaImpressionsUrl": { + "type": "string", + "description": "Third-party URL used to record rich media impressions. Applicable to the following creative types: all RICH_MEDIA." + }, + "thirdPartyUrls": { + "type": "array", + "description": "Third-party URLs for tracking in-stream video creative events. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID.", + "items": { + "$ref": "ThirdPartyTrackingUrl" + } + }, + "timerCustomEvents": { + "type": "array", + "description": "List of timer events configured for the creative. For DISPLAY_IMAGE_GALLERY creatives, these are read-only and auto-generated from clickTags. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset is not HTML_IMAGE.", + "items": { + "$ref": "CreativeCustomEvent" + } + }, + "totalFileSize": { + "type": "string", + "description": "Combined size of all creative assets. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA, and all VPAID.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of this creative. This is a required field. Applicable to all creative types.\n\nNote: FLASH_INPAGE, HTML5_BANNER, and IMAGE are only used for existing creatives. New creatives should use DISPLAY as a replacement for these types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "version": { + "type": "integer", + "description": "The version number helps you keep track of multiple versions of your creative in your reports. The version number will always be auto-generated during insert operations to start at 1. For tracking creatives the version cannot be incremented and will always remain at 1. For all other creative types the version can be incremented only by 1 during update operations. In addition, the version will be automatically incremented by 1 when undergoing Rich Media creative merging. Applicable to all creative types.", + "format": "int32" + }, + "videoDescription": { + "type": "string", + "description": "Description of the video ad. Applicable to the following creative types: all INSTREAM_VIDEO and all VPAID." + }, + "videoDuration": { + "type": "number", + "description": "Creative video duration in seconds. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO, all RICH_MEDIA, and all VPAID.", + "format": "float" + } + } + }, + "CreativeAsset": { + "id": "CreativeAsset", + "type": "object", + "description": "Creative Asset.", + "properties": { + "actionScript3": { + "type": "boolean", + "description": "Whether ActionScript3 is enabled for the flash asset. This is a read-only field. Applicable to the following creative type: FLASH_INPAGE. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "active": { + "type": "boolean", + "description": "Whether the video asset is active. This is a read-only field for VPAID_NON_LINEAR_VIDEO assets. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "alignment": { + "type": "string", + "description": "Possible alignments for an asset. This is a read-only field. Applicable to the following creative types: RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL.", + "enum": [ + "ALIGNMENT_BOTTOM", + "ALIGNMENT_LEFT", + "ALIGNMENT_RIGHT", + "ALIGNMENT_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "artworkType": { + "type": "string", + "description": "Artwork type of rich media creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "Identifier of this asset. This is the same identifier returned during creative asset insert operation. This is a required field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "backupImageExit": { + "$ref": "CreativeCustomEvent", + "description": "Exit event configured for the backup image. Applicable to the following creative types: all RICH_MEDIA." + }, + "bitRate": { + "type": "integer", + "description": "Detected bit-rate for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "int32" + }, + "childAssetType": { + "type": "string", + "description": "Rich media child asset type. This is a read-only field. Applicable to the following creative types: all VPAID.", + "enum": [ + "CHILD_ASSET_TYPE_DATA", + "CHILD_ASSET_TYPE_FLASH", + "CHILD_ASSET_TYPE_IMAGE", + "CHILD_ASSET_TYPE_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "collapsedSize": { + "$ref": "Size", + "description": "Size of an asset when collapsed. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "companionCreativeIds": { + "type": "array", + "description": "List of companion creatives assigned to an in-stream video creative asset. Acceptable values include IDs of existing flash and image creatives. Applicable to INSTREAM_VIDEO creative type with dynamicAssetSelection set to true.", + "items": { + "type": "string", + "format": "int64" + } + }, + "customStartTimeValue": { + "type": "integer", + "description": "Custom start time in seconds for making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "format": "int32" + }, + "detectedFeatures": { + "type": "array", + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field. Applicable to the following creative types: HTML5_BANNER. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "displayType": { + "type": "string", + "description": "Type of rich media asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DISPLAY_TYPE_BACKDROP", + "ASSET_DISPLAY_TYPE_EXPANDING", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH", + "ASSET_DISPLAY_TYPE_FLASH_IN_FLASH_EXPANDING", + "ASSET_DISPLAY_TYPE_FLOATING", + "ASSET_DISPLAY_TYPE_INPAGE", + "ASSET_DISPLAY_TYPE_OVERLAY", + "ASSET_DISPLAY_TYPE_PEEL_DOWN", + "ASSET_DISPLAY_TYPE_VPAID_LINEAR", + "ASSET_DISPLAY_TYPE_VPAID_NON_LINEAR" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "duration": { + "type": "integer", + "description": "Duration in seconds for which an asset will be displayed. Applicable to the following creative types: INSTREAM_VIDEO and VPAID_LINEAR_VIDEO.", + "format": "int32" + }, + "durationType": { + "type": "string", + "description": "Duration type for which an asset will be displayed. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_DURATION_TYPE_AUTO", + "ASSET_DURATION_TYPE_CUSTOM", + "ASSET_DURATION_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "expandedDimension": { + "$ref": "Size", + "description": "Detected expanded dimension for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "fileSize": { + "type": "string", + "description": "File size associated with this creative asset. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64" + }, + "flashVersion": { + "type": "integer", + "description": "Flash version of the asset. This is a read-only field. Applicable to the following creative types: FLASH_INPAGE, all RICH_MEDIA, and all VPAID. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.", + "format": "int32" + }, + "hideFlashObjects": { + "type": "boolean", + "description": "Whether to hide Flash objects flag for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "hideSelectionBoxes": { + "type": "boolean", + "description": "Whether to hide selection boxes flag for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "horizontallyLocked": { + "type": "boolean", + "description": "Whether the asset is horizontally locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." + }, + "id": { + "type": "string", + "description": "Numeric ID of this creative asset. This is a required field and should not be modified. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the asset. This is a read-only, auto-generated field." + }, + "mimeType": { + "type": "string", + "description": "Detected MIME type for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset in collapsed mode. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID. Additionally, only applicable to assets whose displayType is ASSET_DISPLAY_TYPE_EXPANDING or ASSET_DISPLAY_TYPE_PEEL_DOWN." + }, + "originalBackup": { + "type": "boolean", + "description": "Whether the backup asset is original or changed by the user in DCM. Applicable to the following creative types: all RICH_MEDIA." + }, + "position": { + "$ref": "OffsetPosition", + "description": "Offset position for an asset. Applicable to the following creative types: all RICH_MEDIA." + }, + "positionLeftUnit": { + "type": "string", + "description": "Offset left unit for an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "positionTopUnit": { + "type": "string", + "description": "Offset top unit for an asset. This is a read-only field if the asset displayType is ASSET_DISPLAY_TYPE_OVERLAY. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "OFFSET_UNIT_PERCENT", + "OFFSET_UNIT_PIXEL", + "OFFSET_UNIT_PIXEL_FROM_CENTER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "progressiveServingUrl": { + "type": "string", + "description": "Progressive URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "pushdown": { + "type": "boolean", + "description": "Whether the asset pushes down other content. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable when the asset offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height." + }, + "pushdownDuration": { + "type": "number", + "description": "Pushdown duration in seconds for an asset. Must be between 0 and 9.99. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable when the asset pushdown field is true, the offsets are 0, the collapsedSize.width matches size.width, and the collapsedSize.height is less than size.height.", + "format": "float" + }, + "role": { + "type": "string", + "description": "Role of the asset in relation to creative. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT. This is a required field.\nPRIMARY applies to DISPLAY, FLASH_INPAGE, HTML5_BANNER, IMAGE, DISPLAY_IMAGE_GALLERY, all RICH_MEDIA (which may contain multiple primary assets), and all VPAID creatives.\nBACKUP_IMAGE applies to FLASH_INPAGE, HTML5_BANNER, all RICH_MEDIA, and all VPAID creatives. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE.\nADDITIONAL_IMAGE and ADDITIONAL_FLASH apply to FLASH_INPAGE creatives.\nOTHER refers to assets from sources other than DCM, such as Studio uploaded assets, applicable to all RICH_MEDIA and all VPAID creatives.\nPARENT_VIDEO refers to videos uploaded by the user in DCM and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nTRANSCODED_VIDEO refers to videos transcoded by DCM from PARENT_VIDEO assets and is applicable to INSTREAM_VIDEO and VPAID_LINEAR_VIDEO creatives.\nALTERNATE_VIDEO refers to the DCM representation of child asset videos from Studio, and is applicable to VPAID_LINEAR_VIDEO creatives. These cannot be added or removed within DCM.\nFor VPAID_LINEAR_VIDEO creatives, PARENT_VIDEO, TRANSCODED_VIDEO and ALTERNATE_VIDEO assets that are marked active serve as backup in case the VPAID creative cannot be served. Only PARENT_VIDEO assets can be added or removed for an INSTREAM_VIDEO or VPAID_LINEAR_VIDEO creative.", + "enum": [ + "ADDITIONAL_FLASH", + "ADDITIONAL_IMAGE", + "ALTERNATE_VIDEO", + "BACKUP_IMAGE", + "OTHER", + "PARENT_VIDEO", + "PRIMARY", + "TRANSCODED_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "size": { + "$ref": "Size", + "description": "Size associated with this creative asset. This is a required field when applicable; however for IMAGE and FLASH_INPAGE, creatives if left blank, this field will be automatically set using the actual size of the associated image asset. Applicable to the following creative types: DISPLAY_IMAGE_GALLERY, FLASH_INPAGE, HTML5_BANNER, IMAGE, and all RICH_MEDIA. Applicable to DISPLAY when the primary asset type is not HTML_IMAGE." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the asset is SSL-compliant. This is a read-only field. Applicable to all but the following creative types: all REDIRECT and TRACKING_TEXT." + }, + "startTimeType": { + "type": "string", + "description": "Initial wait time type before making the asset visible. Applicable to the following creative types: all RICH_MEDIA.", + "enum": [ + "ASSET_START_TIME_TYPE_CUSTOM", + "ASSET_START_TIME_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "streamingServingUrl": { + "type": "string", + "description": "Streaming URL for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID." + }, + "transparency": { + "type": "boolean", + "description": "Whether the asset is transparent. Applicable to the following creative types: all RICH_MEDIA. Additionally, only applicable to HTML5 assets." + }, + "verticallyLocked": { + "type": "boolean", + "description": "Whether the asset is vertically locked. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA." + }, + "videoDuration": { + "type": "number", + "description": "Detected video duration for video asset. This is a read-only field. Applicable to the following creative types: INSTREAM_VIDEO and all VPAID.", + "format": "float" + }, + "windowMode": { + "type": "string", + "description": "Window mode options for flash assets. Applicable to the following creative types: FLASH_INPAGE, RICH_MEDIA_DISPLAY_EXPANDING, RICH_MEDIA_IM_EXPAND, RICH_MEDIA_DISPLAY_BANNER, and RICH_MEDIA_INPAGE_FLOATING.", + "enum": [ + "OPAQUE", + "TRANSPARENT", + "WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "zIndex": { + "type": "integer", + "description": "zIndex value of an asset. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA.Additionally, only applicable to assets whose displayType is NOT one of the following types: ASSET_DISPLAY_TYPE_INPAGE or ASSET_DISPLAY_TYPE_OVERLAY.", + "format": "int32" + }, + "zipFilename": { + "type": "string", + "description": "File name of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." + }, + "zipFilesize": { + "type": "string", + "description": "Size of zip file. This is a read-only field. Applicable to the following creative types: HTML5_BANNER." + } + } + }, + "CreativeAssetId": { + "id": "CreativeAssetId", + "type": "object", + "description": "Creative Asset ID.", + "properties": { + "name": { + "type": "string", + "description": "Name of the creative asset. This is a required field while inserting an asset. After insertion, this assetIdentifier is used to identify the uploaded asset. Characters in the name must be alphanumeric or one of the following: \".-_ \". Spaces are allowed." + }, + "type": { + "type": "string", + "description": "Type of asset to upload. This is a required field. FLASH and IMAGE are no longer supported for new uploads. All image assets should use HTML_IMAGE.", + "enum": [ + "FLASH", + "HTML", + "HTML_IMAGE", + "IMAGE", + "VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, + "CreativeAssetMetadata": { + "id": "CreativeAssetMetadata", + "type": "object", + "description": "CreativeAssets contains properties of a creative asset file which will be uploaded or has already been uploaded. Refer to the creative sample code for how to upload assets and insert a creative.", + "properties": { + "assetIdentifier": { + "$ref": "CreativeAssetId", + "description": "ID of the creative asset. This is a required field." + }, + "clickTags": { + "type": "array", + "description": "List of detected click tags for assets. This is a read-only auto-generated field.", + "items": { + "$ref": "ClickTag" + } + }, + "detectedFeatures": { + "type": "array", + "description": "List of feature dependencies for the creative asset that are detected by DCM. Feature dependencies are features that a browser must be able to support in order to render your HTML5 creative correctly. This is a read-only, auto-generated field.", + "items": { + "type": "string", + "enum": [ + "APPLICATION_CACHE", + "AUDIO", + "CANVAS", + "CANVAS_TEXT", + "CSS_ANIMATIONS", + "CSS_BACKGROUND_SIZE", + "CSS_BORDER_IMAGE", + "CSS_BORDER_RADIUS", + "CSS_BOX_SHADOW", + "CSS_COLUMNS", + "CSS_FLEX_BOX", + "CSS_FONT_FACE", + "CSS_GENERATED_CONTENT", + "CSS_GRADIENTS", + "CSS_HSLA", + "CSS_MULTIPLE_BGS", + "CSS_OPACITY", + "CSS_REFLECTIONS", + "CSS_RGBA", + "CSS_TEXT_SHADOW", + "CSS_TRANSFORMS", + "CSS_TRANSFORMS3D", + "CSS_TRANSITIONS", + "DRAG_AND_DROP", + "GEO_LOCATION", + "HASH_CHANGE", + "HISTORY", + "INDEXED_DB", + "INLINE_SVG", + "INPUT_ATTR_AUTOCOMPLETE", + "INPUT_ATTR_AUTOFOCUS", + "INPUT_ATTR_LIST", + "INPUT_ATTR_MAX", + "INPUT_ATTR_MIN", + "INPUT_ATTR_MULTIPLE", + "INPUT_ATTR_PATTERN", + "INPUT_ATTR_PLACEHOLDER", + "INPUT_ATTR_REQUIRED", + "INPUT_ATTR_STEP", + "INPUT_TYPE_COLOR", + "INPUT_TYPE_DATE", + "INPUT_TYPE_DATETIME", + "INPUT_TYPE_DATETIME_LOCAL", + "INPUT_TYPE_EMAIL", + "INPUT_TYPE_MONTH", + "INPUT_TYPE_NUMBER", + "INPUT_TYPE_RANGE", + "INPUT_TYPE_SEARCH", + "INPUT_TYPE_TEL", + "INPUT_TYPE_TIME", + "INPUT_TYPE_URL", + "INPUT_TYPE_WEEK", + "LOCAL_STORAGE", + "POST_MESSAGE", + "SESSION_STORAGE", + "SMIL", + "SVG_CLIP_PATHS", + "SVG_FE_IMAGE", + "SVG_FILTERS", + "SVG_HREF", + "TOUCH", + "VIDEO", + "WEBGL", + "WEB_SOCKETS", + "WEB_SQL_DATABASE", + "WEB_WORKERS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "id": { + "type": "string", + "description": "Numeric ID of the asset. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the numeric ID of the asset. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeAssetMetadata\".", + "default": "dfareporting#creativeAssetMetadata" + }, + "warnedValidationRules": { + "type": "array", + "description": "Rules validated during code generation that generated a warning. This is a read-only, auto-generated field.\n\nPossible values are:\n- \"ADMOB_REFERENCED\"\n- \"ASSET_FORMAT_UNSUPPORTED_DCM\"\n- \"ASSET_INVALID\"\n- \"CLICK_TAG_HARD_CODED\"\n- \"CLICK_TAG_INVALID\"\n- \"CLICK_TAG_IN_GWD\"\n- \"CLICK_TAG_MISSING\"\n- \"CLICK_TAG_MORE_THAN_ONE\"\n- \"CLICK_TAG_NON_TOP_LEVEL\"\n- \"COMPONENT_UNSUPPORTED_DCM\"\n- \"ENABLER_UNSUPPORTED_METHOD_DCM\"\n- \"EXTERNAL_FILE_REFERENCED\"\n- \"FILE_DETAIL_EMPTY\"\n- \"FILE_TYPE_INVALID\"\n- \"GWD_PROPERTIES_INVALID\"\n- \"HTML5_FEATURE_UNSUPPORTED\"\n- \"LINKED_FILE_NOT_FOUND\"\n- \"MAX_FLASH_VERSION_11\"\n- \"MRAID_REFERENCED\"\n- \"NOT_SSL_COMPLIANT\"\n- \"ORPHANED_ASSET\"\n- \"PRIMARY_HTML_MISSING\"\n- \"SVG_INVALID\"\n- \"ZIP_INVALID\"", + "items": { + "type": "string", + "enum": [ + "ADMOB_REFERENCED", + "ASSET_FORMAT_UNSUPPORTED_DCM", + "ASSET_INVALID", + "CLICK_TAG_HARD_CODED", + "CLICK_TAG_INVALID", + "CLICK_TAG_IN_GWD", + "CLICK_TAG_MISSING", + "CLICK_TAG_MORE_THAN_ONE", + "CLICK_TAG_NON_TOP_LEVEL", + "COMPONENT_UNSUPPORTED_DCM", + "ENABLER_UNSUPPORTED_METHOD_DCM", + "EXTERNAL_FILE_REFERENCED", + "FILE_DETAIL_EMPTY", + "FILE_TYPE_INVALID", + "GWD_PROPERTIES_INVALID", + "HTML5_FEATURE_UNSUPPORTED", + "LINKED_FILE_NOT_FOUND", + "MAX_FLASH_VERSION_11", + "MRAID_REFERENCED", + "NOT_SSL_COMPLIANT", + "ORPHANED_ASSET", + "PRIMARY_HTML_MISSING", + "SVG_INVALID", + "ZIP_INVALID" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + } + }, + "CreativeAssetSelection": { + "id": "CreativeAssetSelection", + "type": "object", + "description": "Encapsulates the list of rules for asset selection and a default asset in case none of the rules match. Applicable to INSTREAM_VIDEO creatives.", + "properties": { + "defaultAssetId": { + "type": "string", + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative, and will be served if none of the rules match. This is a required field.", + "format": "int64" + }, + "rules": { + "type": "array", + "description": "Rules determine which asset will be served to a viewer. Rules will be evaluated in the order in which they are stored in this list. This list must contain at least one rule. Applicable to INSTREAM_VIDEO creatives.", + "items": { + "$ref": "Rule" + } + } + } + }, + "CreativeAssignment": { + "id": "CreativeAssignment", + "type": "object", + "description": "Creative Assignment.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this creative assignment is active. When true, the creative will be included in the ad's rotation." + }, + "applyEventTags": { + "type": "boolean", + "description": "Whether applicable event tags should fire when this creative assignment is rendered. If this value is unset when the ad is inserted or updated, it will default to true for all creative types EXCEPT for INTERNAL_REDIRECT, INTERSTITIAL_INTERNAL_REDIRECT, and INSTREAM_VIDEO." + }, + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of the creative assignment." + }, + "companionCreativeOverrides": { + "type": "array", + "description": "Companion creative overrides for this creative assignment. Applicable to video ads.", + "items": { + "$ref": "CompanionClickThroughOverride" + } + }, + "creativeGroupAssignments": { + "type": "array", + "description": "Creative group assignments for this creative assignment. Only one assignment per creative group number is allowed for a maximum of two assignments.", + "items": { + "$ref": "CreativeGroupAssignment" + } + }, + "creativeId": { + "type": "string", + "description": "ID of the creative to be assigned. This is a required field.", + "format": "int64" + }, + "creativeIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the creative. This is a read-only, auto-generated field." + }, + "endTime": { + "type": "string", + "description": "Date and time that the assigned creative should stop serving. Must be later than the start time.", + "format": "date-time" + }, + "richMediaExitOverrides": { + "type": "array", + "description": "Rich media exit overrides for this creative assignment.\nApplicable when the creative type is any of the following: \n- RICH_MEDIA_INPAGE\n- RICH_MEDIA_INPAGE_FLOATING\n- RICH_MEDIA_IM_EXPAND\n- RICH_MEDIA_EXPANDING\n- RICH_MEDIA_INTERSTITIAL_FLOAT\n- RICH_MEDIA_MOBILE_IN_APP\n- RICH_MEDIA_MULTI_FLOATING\n- RICH_MEDIA_PEEL_DOWN\n- ADVANCED_BANNER\n- VPAID_LINEAR\n- VPAID_NON_LINEAR", + "items": { + "$ref": "RichMediaExitOverride" + } + }, + "sequence": { + "type": "integer", + "description": "Sequence number of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_SEQUENTIAL.", + "format": "int32" + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the creative to be assigned is SSL-compliant. This is a read-only field that is auto-generated when the ad is inserted or updated." + }, + "startTime": { + "type": "string", + "description": "Date and time that the assigned creative should start serving.", + "format": "date-time" + }, + "weight": { + "type": "integer", + "description": "Weight of the creative assignment, applicable when the rotation type is CREATIVE_ROTATION_TYPE_RANDOM.", + "format": "int32" + } + } + }, + "CreativeCustomEvent": { + "id": "CreativeCustomEvent", + "type": "object", + "description": "Creative Custom Event.", + "properties": { + "advertiserCustomEventId": { + "type": "string", + "description": "Unique ID of this event used by DDM Reporting and Data Transfer. This is a read-only field.", + "format": "int64" + }, + "advertiserCustomEventName": { + "type": "string", + "description": "User-entered name for the event." + }, + "advertiserCustomEventType": { + "type": "string", + "description": "Type of the event. This is a read-only field.", + "enum": [ + "ADVERTISER_EVENT_COUNTER", + "ADVERTISER_EVENT_EXIT", + "ADVERTISER_EVENT_TIMER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "artworkLabel": { + "type": "string", + "description": "Artwork label column, used to link events in DCM back to events in Studio. This is a required field and should not be modified after insertion." + }, + "artworkType": { + "type": "string", + "description": "Artwork type used by the creative.This is a read-only field.", + "enum": [ + "ARTWORK_TYPE_FLASH", + "ARTWORK_TYPE_HTML5", + "ARTWORK_TYPE_IMAGE", + "ARTWORK_TYPE_MIXED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "exitUrl": { + "type": "string", + "description": "Exit URL of the event. This field is used only for exit events." + }, + "id": { + "type": "string", + "description": "ID of this event. This is a required field and should not be modified after insertion.", + "format": "int64" + }, + "popupWindowProperties": { + "$ref": "PopupWindowProperties", + "description": "Properties for rich media popup windows. This field is used only for exit events." + }, + "targetType": { + "type": "string", + "description": "Target type used by the event.", + "enum": [ + "TARGET_BLANK", + "TARGET_PARENT", + "TARGET_POPUP", + "TARGET_SELF", + "TARGET_TOP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "videoReportingId": { + "type": "string", + "description": "Video reporting ID, used to differentiate multiple videos in a single creative. This is a read-only field." + } + } + }, + "CreativeField": { + "id": "CreativeField", + "type": "object", + "description": "Contains properties of a creative field.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative field. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this creative field. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeField\".", + "default": "dfareporting#creativeField" + }, + "name": { + "type": "string", + "description": "Name of this creative field. This is a required field and must be less than 256 characters long and unique among creative fields of the same advertiser." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative field. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "CreativeFieldAssignment": { + "id": "CreativeFieldAssignment", + "type": "object", + "description": "Creative Field Assignment.", + "properties": { + "creativeFieldId": { + "type": "string", + "description": "ID of the creative field.", + "format": "int64" + }, + "creativeFieldValueId": { + "type": "string", + "description": "ID of the creative field value.", + "format": "int64" + } + } + }, + "CreativeFieldValue": { + "id": "CreativeFieldValue", + "type": "object", + "description": "Contains properties of a creative field value.", + "properties": { + "id": { + "type": "string", + "description": "ID of this creative field value. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValue\".", + "default": "dfareporting#creativeFieldValue" + }, + "value": { + "type": "string", + "description": "Value of this creative field value. It needs to be less than 256 characters in length and unique per creative field." + } + } + }, + "CreativeFieldValuesListResponse": { + "id": "CreativeFieldValuesListResponse", + "type": "object", + "description": "Creative Field Value List Response", + "properties": { + "creativeFieldValues": { + "type": "array", + "description": "Creative field value collection.", + "items": { + "$ref": "CreativeFieldValue" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldValuesListResponse\".", + "default": "dfareporting#creativeFieldValuesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeFieldsListResponse": { + "id": "CreativeFieldsListResponse", + "type": "object", + "description": "Creative Field List Response", + "properties": { + "creativeFields": { + "type": "array", + "description": "Creative field collection.", + "items": { + "$ref": "CreativeField" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeFieldsListResponse\".", + "default": "dfareporting#creativeFieldsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeGroup": { + "id": "CreativeGroup", + "type": "object", + "description": "Contains properties of a creative group.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative group. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "groupNumber": { + "type": "integer", + "description": "Subgroup of the creative group. Assign your creative groups to one of the following subgroups in order to filter or manage them more easily. This field is required on insertion and is read-only after insertion.\nAcceptable values are: \n- 1\n- 2", + "format": "int32" + }, + "id": { + "type": "string", + "description": "ID of this creative group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroup\".", + "default": "dfareporting#creativeGroup" + }, + "name": { + "type": "string", + "description": "Name of this creative group. This is a required field and must be less than 256 characters long and unique among creative groups of the same advertiser." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this creative group. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "CreativeGroupAssignment": { + "id": "CreativeGroupAssignment", + "type": "object", + "description": "Creative Group Assignment.", + "properties": { + "creativeGroupId": { + "type": "string", + "description": "ID of the creative group to be assigned.", + "format": "int64" + }, + "creativeGroupNumber": { + "type": "string", + "description": "Creative group number of the creative group assignment.", + "enum": [ + "CREATIVE_GROUP_ONE", + "CREATIVE_GROUP_TWO" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "CreativeGroupsListResponse": { + "id": "CreativeGroupsListResponse", + "type": "object", + "description": "Creative Group List Response", + "properties": { + "creativeGroups": { + "type": "array", + "description": "Creative group collection.", + "items": { + "$ref": "CreativeGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativeGroupsListResponse\".", + "default": "dfareporting#creativeGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CreativeOptimizationConfiguration": { + "id": "CreativeOptimizationConfiguration", + "type": "object", + "description": "Creative optimization settings.", + "properties": { + "id": { + "type": "string", + "description": "ID of this creative optimization config. This field is auto-generated when the campaign is inserted or updated. It can be null for existing campaigns.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this creative optimization config. This is a required field and must be less than 129 characters long." + }, + "optimizationActivitys": { + "type": "array", + "description": "List of optimization activities associated with this configuration.", + "items": { + "$ref": "OptimizationActivity" + } + }, + "optimizationModel": { + "type": "string", + "description": "Optimization model for this configuration.", + "enum": [ + "CLICK", + "POST_CLICK", + "POST_CLICK_AND_IMPRESSION", + "POST_IMPRESSION", + "VIDEO_COMPLETION" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, + "CreativeRotation": { + "id": "CreativeRotation", + "type": "object", + "description": "Creative Rotation.", + "properties": { + "creativeAssignments": { + "type": "array", + "description": "Creative assignments in this creative rotation.", + "items": { + "$ref": "CreativeAssignment" + } + }, + "creativeOptimizationConfigurationId": { + "type": "string", + "description": "Creative optimization configuration that is used by this ad. It should refer to one of the existing optimization configurations in the ad's campaign. If it is unset or set to 0, then the campaign's default optimization configuration will be used for this ad.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of creative rotation. Can be used to specify whether to use sequential or random rotation.", + "enum": [ + "CREATIVE_ROTATION_TYPE_RANDOM", + "CREATIVE_ROTATION_TYPE_SEQUENTIAL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "weightCalculationStrategy": { + "type": "string", + "description": "Strategy for calculating weights. Used with CREATIVE_ROTATION_TYPE_RANDOM.", + "enum": [ + "WEIGHT_STRATEGY_CUSTOM", + "WEIGHT_STRATEGY_EQUAL", + "WEIGHT_STRATEGY_HIGHEST_CTR", + "WEIGHT_STRATEGY_OPTIMIZED" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "CreativeSettings": { + "id": "CreativeSettings", + "type": "object", + "description": "Creative Settings", + "properties": { + "iFrameFooter": { + "type": "string", + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." + }, + "iFrameHeader": { + "type": "string", + "description": "Header text for iFrames for this site. Must be less than or equal to 2000 characters long." + } + } + }, + "CreativesListResponse": { + "id": "CreativesListResponse", + "type": "object", + "description": "Creative List Response", + "properties": { + "creatives": { + "type": "array", + "description": "Creative collection.", + "items": { + "$ref": "Creative" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#creativesListResponse\".", + "default": "dfareporting#creativesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "CrossDimensionReachReportCompatibleFields": { + "id": "CrossDimensionReachReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"breakdown\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#crossDimensionReachReportCompatibleFields.", + "default": "dfareporting#crossDimensionReachReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "overlapMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"overlapMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "CustomFloodlightVariable": { + "id": "CustomFloodlightVariable", + "type": "object", + "description": "A custom floodlight variable.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#customFloodlightVariable\".", + "default": "dfareporting#customFloodlightVariable" + }, + "type": { + "type": "string", + "description": "The type of custom floodlight variable to supply a value for. These map to the \"u[1-20]=\" in the tags.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "The value of the custom floodlight variable. The length of string must not exceed 50 characters." + } + } + }, + "CustomRichMediaEvents": { + "id": "CustomRichMediaEvents", + "type": "object", + "description": "Represents a Custom Rich Media Events group.", + "properties": { + "filteredEventIds": { + "type": "array", + "description": "List of custom rich media event IDs. Dimension values must be all of type dfa:richMediaEventTypeIdAndName.", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#customRichMediaEvents.", + "default": "dfareporting#customRichMediaEvents" + } + } + }, + "DateRange": { + "id": "DateRange", + "type": "object", + "description": "Represents a date range.", + "properties": { + "endDate": { + "type": "string", + "description": "The end date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date" + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dateRange.", + "default": "dfareporting#dateRange" + }, + "relativeDateRange": { + "type": "string", + "description": "The date range relative to the date of when the report is run.", + "enum": [ + "LAST_24_MONTHS", + "LAST_30_DAYS", + "LAST_365_DAYS", + "LAST_7_DAYS", + "LAST_90_DAYS", + "MONTH_TO_DATE", + "PREVIOUS_MONTH", + "PREVIOUS_QUARTER", + "PREVIOUS_WEEK", + "PREVIOUS_YEAR", + "QUARTER_TO_DATE", + "TODAY", + "WEEK_TO_DATE", + "YEAR_TO_DATE", + "YESTERDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "The start date of the date range, inclusive. A string of the format: \"yyyy-MM-dd\".", + "format": "date" + } + } + }, + "DayPartTargeting": { + "id": "DayPartTargeting", + "type": "object", + "description": "Day Part Targeting.", + "properties": { + "daysOfWeek": { + "type": "array", + "description": "Days of the week when the ad will serve.\n\nAcceptable values are:\n- \"SUNDAY\"\n- \"MONDAY\"\n- \"TUESDAY\"\n- \"WEDNESDAY\"\n- \"THURSDAY\"\n- \"FRIDAY\"\n- \"SATURDAY\"", + "items": { + "type": "string", + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "hoursOfDay": { + "type": "array", + "description": "Hours of the day when the ad will serve. Must be an integer between 0 and 23 (inclusive), where 0 is midnight to 1 AM, and 23 is 11 PM to midnight. Can be specified with days of week, in which case the ad would serve during these hours on the specified days. For example, if Monday, Wednesday, Friday are the days of week specified and 9-10am, 3-5pm (hours 9, 15, and 16) is specified, the ad would serve Monday, Wednesdays, and Fridays at 9-10am and 3-5pm.", + "items": { + "type": "integer", + "format": "int32" + } + }, + "userLocalTime": { + "type": "boolean", + "description": "Whether or not to use the user's local time. If false, the America/New York time zone applies." + } + } + }, + "DefaultClickThroughEventTagProperties": { + "id": "DefaultClickThroughEventTagProperties", + "type": "object", + "description": "Properties of inheriting and overriding the default click-through event tag. A campaign may override the event tag defined at the advertiser level, and an ad may also override the campaign's setting further.", + "properties": { + "defaultClickThroughEventTagId": { + "type": "string", + "description": "ID of the click-through event tag to apply to all ads in this entity's scope.", + "format": "int64" + }, + "overrideInheritedEventTag": { + "type": "boolean", + "description": "Whether this entity should override the inherited default click-through event tag with its own defined value." + } + } + }, + "DeliverySchedule": { + "id": "DeliverySchedule", + "type": "object", + "description": "Delivery Schedule.", + "properties": { + "frequencyCap": { + "$ref": "FrequencyCap", + "description": "Limit on the number of times an individual user can be served the ad within a specified period of time." + }, + "hardCutoff": { + "type": "boolean", + "description": "Whether or not hard cutoff is enabled. If true, the ad will not serve after the end date and time. Otherwise the ad will continue to be served until it has reached its delivery goals." + }, + "impressionRatio": { + "type": "string", + "description": "Impression ratio for this ad. This ratio determines how often each ad is served relative to the others. For example, if ad A has an impression ratio of 1 and ad B has an impression ratio of 3, then DCM will serve ad B three times as often as ad A. Must be between 1 and 10.", + "format": "int64" + }, + "priority": { + "type": "string", + "description": "Serving priority of an ad, with respect to other ads. The lower the priority number, the greater the priority with which it is served.", + "enum": [ + "AD_PRIORITY_01", + "AD_PRIORITY_02", + "AD_PRIORITY_03", + "AD_PRIORITY_04", + "AD_PRIORITY_05", + "AD_PRIORITY_06", + "AD_PRIORITY_07", + "AD_PRIORITY_08", + "AD_PRIORITY_09", + "AD_PRIORITY_10", + "AD_PRIORITY_11", + "AD_PRIORITY_12", + "AD_PRIORITY_13", + "AD_PRIORITY_14", + "AD_PRIORITY_15", + "AD_PRIORITY_16" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "DfpSettings": { + "id": "DfpSettings", + "type": "object", + "description": "DFP Settings", + "properties": { + "dfp_network_code": { + "type": "string", + "description": "DFP network code for this directory site." + }, + "dfp_network_name": { + "type": "string", + "description": "DFP network name for this directory site." + }, + "programmaticPlacementAccepted": { + "type": "boolean", + "description": "Whether this directory site accepts programmatic placements." + }, + "pubPaidPlacementAccepted": { + "type": "boolean", + "description": "Whether this directory site accepts publisher-paid tags." + }, + "publisherPortalOnly": { + "type": "boolean", + "description": "Whether this directory site is available only via DoubleClick Publisher Portal." + } + } + }, + "Dimension": { + "id": "Dimension", + "type": "object", + "description": "Represents a dimension.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimension.", + "default": "dfareporting#dimension" + }, + "name": { + "type": "string", + "description": "The dimension name, e.g. dfa:advertiser" + } + } + }, + "DimensionFilter": { + "id": "DimensionFilter", + "type": "object", + "description": "Represents a dimension filter.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension to filter." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimensionFilter.", + "default": "dfareporting#dimensionFilter" + }, + "value": { + "type": "string", + "description": "The value of the dimension to filter." + } + } + }, + "DimensionValue": { + "id": "DimensionValue", + "type": "object", + "description": "Represents a DimensionValue resource.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "id": { + "type": "string", + "description": "The ID associated with the value if available." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#dimensionValue.", + "default": "dfareporting#dimensionValue" + }, + "matchType": { + "type": "string", + "description": "Determines how the 'value' field is matched when filtering. If not specified, defaults to EXACT. If set to WILDCARD_EXPRESSION, '*' is allowed as a placeholder for variable length character sequences, and it can be escaped with a backslash. Note, only paid search dimensions ('dfa:paidSearch*') allow a matchType other than EXACT.", + "enum": [ + "BEGINS_WITH", + "CONTAINS", + "EXACT", + "WILDCARD_EXPRESSION" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "The value of the dimension." + } + } + }, + "DimensionValueList": { + "id": "DimensionValueList", + "type": "object", + "description": "Represents the list of DimensionValue resources.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The dimension values returned in this response.", + "items": { + "$ref": "DimensionValue" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#dimensionValueList.", + "default": "dfareporting#dimensionValueList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through dimension values. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "DimensionValueRequest": { + "id": "DimensionValueRequest", + "type": "object", + "description": "Represents a DimensionValuesRequest.", + "properties": { + "dimensionName": { + "type": "string", + "description": "The name of the dimension for which values should be requested.", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + }, + "endDate": { + "type": "string", + "description": "The end date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + }, + "filters": { + "type": "array", + "description": "The list of filters by which to filter values. The filters are ANDed.", + "items": { + "$ref": "DimensionFilter" + } + }, + "kind": { + "type": "string", + "description": "The kind of request this is, in this case dfareporting#dimensionValueRequest.", + "default": "dfareporting#dimensionValueRequest" + }, + "startDate": { + "type": "string", + "description": "The start date of the date range for which to retrieve dimension values. A string of the format \"yyyy-MM-dd\".", + "format": "date", + "annotations": { + "required": [ + "dfareporting.dimensionValues.query" + ] + } + } + } + }, + "DirectorySite": { + "id": "DirectorySite", + "type": "object", + "description": "DirectorySites contains properties of a website from the Site Directory. Sites need to be added to an account via the Sites resource before they can be assigned to a placement.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this directory site is active." + }, + "contactAssignments": { + "type": "array", + "description": "Directory site contacts.", + "items": { + "$ref": "DirectorySiteContactAssignment" + } + }, + "countryId": { + "type": "string", + "description": "Country ID of this directory site.", + "format": "int64" + }, + "currencyId": { + "type": "string", + "description": "Currency ID of this directory site.\nPossible values are: \n- \"1\" for USD \n- \"2\" for GBP \n- \"3\" for ESP \n- \"4\" for SEK \n- \"5\" for CAD \n- \"6\" for JPY \n- \"7\" for DEM \n- \"8\" for AUD \n- \"9\" for FRF \n- \"10\" for ITL \n- \"11\" for DKK \n- \"12\" for NOK \n- \"13\" for FIM \n- \"14\" for ZAR \n- \"15\" for IEP \n- \"16\" for NLG \n- \"17\" for EUR \n- \"18\" for KRW \n- \"19\" for TWD \n- \"20\" for SGD \n- \"21\" for CNY \n- \"22\" for HKD \n- \"23\" for NZD \n- \"24\" for MYR \n- \"25\" for BRL \n- \"26\" for PTE \n- \"27\" for MXP \n- \"28\" for CLP \n- \"29\" for TRY \n- \"30\" for ARS \n- \"31\" for PEN \n- \"32\" for ILS \n- \"33\" for CHF \n- \"34\" for VEF \n- \"35\" for COP \n- \"36\" for GTQ \n- \"37\" for PLN \n- \"39\" for INR \n- \"40\" for THB \n- \"41\" for IDR \n- \"42\" for CZK \n- \"43\" for RON \n- \"44\" for HUF \n- \"45\" for RUB \n- \"46\" for AED \n- \"47\" for BGN \n- \"48\" for HRK", + "format": "int64" + }, + "description": { + "type": "string", + "description": "Description of this directory site." + }, + "id": { + "type": "string", + "description": "ID of this directory site. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this directory site. This is a read-only, auto-generated field." + }, + "inpageTagFormats": { + "type": "array", + "description": "Tag types for regular placements.\n\nAcceptable values are:\n- \"STANDARD\"\n- \"IFRAME_JAVASCRIPT_INPAGE\"\n- \"INTERNAL_REDIRECT_INPAGE\"\n- \"JAVASCRIPT_INPAGE\"", + "items": { + "type": "string", + "enum": [ + "IFRAME_JAVASCRIPT_INPAGE", + "INTERNAL_REDIRECT_INPAGE", + "JAVASCRIPT_INPAGE", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + }, + "interstitialTagFormats": { + "type": "array", + "description": "Tag types for interstitial placements.\n\nAcceptable values are:\n- \"IFRAME_JAVASCRIPT_INTERSTITIAL\"\n- \"INTERNAL_REDIRECT_INTERSTITIAL\"\n- \"JAVASCRIPT_INTERSTITIAL\"", + "items": { + "type": "string", + "enum": [ + "IFRAME_JAVASCRIPT_INTERSTITIAL", + "INTERNAL_REDIRECT_INTERSTITIAL", + "JAVASCRIPT_INTERSTITIAL" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySite\".", + "default": "dfareporting#directorySite" + }, + "name": { + "type": "string", + "description": "Name of this directory site." + }, + "parentId": { + "type": "string", + "description": "Parent directory site ID.", + "format": "int64" + }, + "settings": { + "$ref": "DirectorySiteSettings", + "description": "Directory site settings." + }, + "url": { + "type": "string", + "description": "URL of this directory site." + } + } + }, + "DirectorySiteContact": { + "id": "DirectorySiteContact", + "type": "object", + "description": "Contains properties of a Site Directory contact.", + "properties": { + "address": { + "type": "string", + "description": "Address of this directory site contact." + }, + "email": { + "type": "string", + "description": "Email address of this directory site contact." + }, + "firstName": { + "type": "string", + "description": "First name of this directory site contact." + }, + "id": { + "type": "string", + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContact\".", + "default": "dfareporting#directorySiteContact" + }, + "lastName": { + "type": "string", + "description": "Last name of this directory site contact." + }, + "phone": { + "type": "string", + "description": "Phone number of this directory site contact." + }, + "role": { + "type": "string", + "description": "Directory site contact role.", + "enum": [ + "ADMIN", + "EDIT", + "VIEW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "title": { + "type": "string", + "description": "Title or designation of this directory site contact." + }, + "type": { + "type": "string", + "description": "Directory site contact type.", + "enum": [ + "BILLING", + "OTHER", + "SALES", + "TECHNICAL" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "DirectorySiteContactAssignment": { + "id": "DirectorySiteContactAssignment", + "type": "object", + "description": "Directory Site Contact Assignment", + "properties": { + "contactId": { + "type": "string", + "description": "ID of this directory site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "visibility": { + "type": "string", + "description": "Visibility of this directory site contact assignment. When set to PUBLIC this contact assignment is visible to all account and agency users; when set to PRIVATE it is visible only to the site.", + "enum": [ + "PRIVATE", + "PUBLIC" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "DirectorySiteContactsListResponse": { + "id": "DirectorySiteContactsListResponse", + "type": "object", + "description": "Directory Site Contact List Response", + "properties": { + "directorySiteContacts": { + "type": "array", + "description": "Directory site contact collection", + "items": { + "$ref": "DirectorySiteContact" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySiteContactsListResponse\".", + "default": "dfareporting#directorySiteContactsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "DirectorySiteSettings": { + "id": "DirectorySiteSettings", + "type": "object", + "description": "Directory Site Settings", + "properties": { + "activeViewOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled active view creatives." + }, + "dfp_settings": { + "$ref": "DfpSettings", + "description": "Directory site DFP settings." + }, + "instream_video_placement_accepted": { + "type": "boolean", + "description": "Whether this site accepts in-stream video ads." + }, + "interstitialPlacementAccepted": { + "type": "boolean", + "description": "Whether this site accepts interstitial ads." + }, + "nielsenOcrOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled Nielsen OCR reach ratings." + }, + "verificationTagOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled generation of Verification ins tags." + }, + "videoActiveViewOptOut": { + "type": "boolean", + "description": "Whether this directory site has disabled active view for in-stream video creatives." + } + } + }, + "DirectorySitesListResponse": { + "id": "DirectorySitesListResponse", + "type": "object", + "description": "Directory Site List Response", + "properties": { + "directorySites": { + "type": "array", + "description": "Directory site collection.", + "items": { + "$ref": "DirectorySite" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#directorySitesListResponse\".", + "default": "dfareporting#directorySitesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "DynamicTargetingKey": { + "id": "DynamicTargetingKey", + "type": "object", + "description": "Contains properties of a dynamic targeting key. Dynamic targeting keys are unique, user-friendly labels, created at the advertiser level in DCM, that can be assigned to ads, creatives, and placements and used for targeting with DoubleClick Studio dynamic creatives. Use these labels instead of numeric DCM IDs (such as placement IDs) to save time and avoid errors in your dynamic feeds.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKey\".", + "default": "dfareporting#dynamicTargetingKey" + }, + "name": { + "type": "string", + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase." + }, + "objectId": { + "type": "string", + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "format": "int64" + }, + "objectType": { + "type": "string", + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + } + }, + "DynamicTargetingKeysListResponse": { + "id": "DynamicTargetingKeysListResponse", + "type": "object", + "description": "Dynamic Targeting Key List Response", + "properties": { + "dynamicTargetingKeys": { + "type": "array", + "description": "Dynamic targeting key collection.", + "items": { + "$ref": "DynamicTargetingKey" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#dynamicTargetingKeysListResponse\".", + "default": "dfareporting#dynamicTargetingKeysListResponse" + } + } + }, + "EncryptionInfo": { + "id": "EncryptionInfo", + "type": "object", + "description": "A description of how user IDs are encrypted.", + "properties": { + "encryptionEntityId": { + "type": "string", + "description": "The encryption entity ID. This should match the encryption configuration for ad serving or Data Transfer.", + "format": "int64" + }, + "encryptionEntityType": { + "type": "string", + "description": "The encryption entity type. This should match the encryption configuration for ad serving or Data Transfer.", + "enum": [ + "ADWORDS_CUSTOMER", + "DBM_ADVERTISER", + "DBM_PARTNER", + "DCM_ACCOUNT", + "DCM_ADVERTISER", + "ENCRYPTION_ENTITY_TYPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "encryptionSource": { + "type": "string", + "description": "Describes whether the encrypted cookie was received from ad serving (the %m macro) or from Data Transfer.", + "enum": [ + "AD_SERVING", + "DATA_TRANSFER", + "ENCRYPTION_SCOPE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#encryptionInfo\".", + "default": "dfareporting#encryptionInfo" + } + } + }, + "EventTag": { + "id": "EventTag", + "type": "object", + "description": "Contains properties of an event tag.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this event tag. This field or the campaignId field is required on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this event tag. This field or the advertiserId field is required on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "enabledByDefault": { + "type": "boolean", + "description": "Whether this event tag should be automatically enabled for all of the advertiser's campaigns and ads." + }, + "excludeFromAdxRequests": { + "type": "boolean", + "description": "Whether to remove this event tag from ads that are trafficked through DoubleClick Bid Manager to Ad Exchange. This may be useful if the event tag uses a pixel that is unapproved for Ad Exchange bids on one or more networks, such as the Google Display Network." + }, + "id": { + "type": "string", + "description": "ID of this event tag. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTag\".", + "default": "dfareporting#eventTag" + }, + "name": { + "type": "string", + "description": "Name of this event tag. This is a required field and must be less than 256 characters long." + }, + "siteFilterType": { + "type": "string", + "description": "Site filter type for this event tag. If no type is specified then the event tag will be applied to all sites.", + "enum": [ + "BLACKLIST", + "WHITELIST" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "siteIds": { + "type": "array", + "description": "Filter list of site IDs associated with this event tag. The siteFilterType determines whether this is a whitelist or blacklist filter.", + "items": { + "type": "string", + "format": "int64" + } + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether this tag is SSL-compliant or not. This is a read-only field." + }, + "status": { + "type": "string", + "description": "Status of this event tag. Must be ENABLED for this event tag to fire. This is a required field.", + "enum": [ + "DISABLED", + "ENABLED" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this event tag. This is a read-only field that can be left blank.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Event tag type. Can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking. This is a required field.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "url": { + "type": "string", + "description": "Payload URL for this event tag. The URL on a click-through event tag should have a landing page URL appended to the end of it. This field is required on insertion." + }, + "urlEscapeLevels": { + "type": "integer", + "description": "Number of times the landing page URL should be URL-escaped before being appended to the click-through event tag URL. Only applies to click-through event tags as specified by the event tag type.", + "format": "int32" + } + } + }, + "EventTagOverride": { + "id": "EventTagOverride", + "type": "object", + "description": "Event tag override information.", + "properties": { + "enabled": { + "type": "boolean", + "description": "Whether this override is enabled." + }, + "id": { + "type": "string", + "description": "ID of this event tag override. This is a read-only, auto-generated field.", + "format": "int64" + } + } + }, + "EventTagsListResponse": { + "id": "EventTagsListResponse", + "type": "object", + "description": "Event Tag List Response", + "properties": { + "eventTags": { + "type": "array", + "description": "Event tag collection.", + "items": { + "$ref": "EventTag" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#eventTagsListResponse\".", + "default": "dfareporting#eventTagsListResponse" + } + } + }, + "File": { + "id": "File", + "type": "object", + "description": "Represents a File resource. A file contains the metadata for a report run. It shows the status of the run and holds the URLs to the generated report data if the run is finished and the status is \"REPORT_AVAILABLE\".", + "properties": { + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which the file has report data. The date range will always be the absolute date range for which the report is run." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "fileName": { + "type": "string", + "description": "The filename of the file." + }, + "format": { + "type": "string", + "description": "The output format of the report. Only available once the file is available.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "The unique ID of this report file.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#file.", + "default": "dfareporting#file" + }, + "lastModifiedTime": { + "type": "string", + "description": "The timestamp in milliseconds since epoch when this file was last modified.", + "format": "int64" + }, + "reportId": { + "type": "string", + "description": "The ID of the report this file was generated from.", + "format": "int64" + }, + "status": { + "type": "string", + "description": "The status of the report file.", + "enum": [ + "CANCELLED", + "FAILED", + "PROCESSING", + "REPORT_AVAILABLE" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "urls": { + "type": "object", + "description": "The URLs where the completed report file can be downloaded.", + "properties": { + "apiUrl": { + "type": "string", + "description": "The URL for downloading the report data through the API." + }, + "browserUrl": { + "type": "string", + "description": "The URL for downloading the report data through a browser." + } + } + } + } + }, + "FileList": { + "id": "FileList", + "type": "object", + "description": "Represents the list of File resources.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The files returned in this response.", + "items": { + "$ref": "File" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#fileList.", + "default": "dfareporting#fileList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through files. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "Flight": { + "id": "Flight", + "type": "object", + "description": "Flight", + "properties": { + "endDate": { + "type": "string", + "description": "Inventory item flight end date.", + "format": "date" + }, + "rateOrCost": { + "type": "string", + "description": "Rate or cost of this flight.", + "format": "int64" + }, + "startDate": { + "type": "string", + "description": "Inventory item flight start date.", + "format": "date" + }, + "units": { + "type": "string", + "description": "Units of this flight.", + "format": "int64" + } + } + }, + "FloodlightActivitiesGenerateTagResponse": { + "id": "FloodlightActivitiesGenerateTagResponse", + "type": "object", + "description": "Floodlight Activity GenerateTag Response", + "properties": { + "floodlightActivityTag": { + "type": "string", + "description": "Generated tag for this floodlight activity." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesGenerateTagResponse\".", + "default": "dfareporting#floodlightActivitiesGenerateTagResponse" + } + } + }, + "FloodlightActivitiesListResponse": { + "id": "FloodlightActivitiesListResponse", + "type": "object", + "description": "Floodlight Activity List Response", + "properties": { + "floodlightActivities": { + "type": "array", + "description": "Floodlight activity collection.", + "items": { + "$ref": "FloodlightActivity" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivitiesListResponse\".", + "default": "dfareporting#floodlightActivitiesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "FloodlightActivity": { + "id": "FloodlightActivity", + "type": "object", + "description": "Contains properties of a Floodlight activity.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's advertiser or the existing activity's advertiser.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "cacheBustingType": { + "type": "string", + "description": "Code type used for cache busting in the generated tag.", + "enum": [ + "ACTIVE_SERVER_PAGE", + "COLD_FUSION", + "JAVASCRIPT", + "JSP", + "PHP" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "countingMethod": { + "type": "string", + "description": "Counting method for conversions for this floodlight activity. This is a required field.", + "enum": [ + "ITEMS_SOLD_COUNTING", + "SESSION_COUNTING", + "STANDARD_COUNTING", + "TRANSACTIONS_COUNTING", + "UNIQUE_COUNTING" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "defaultTags": { + "type": "array", + "description": "Dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityDynamicTag" + } + }, + "expectedUrl": { + "type": "string", + "description": "URL where this tag will be deployed. If specified, must be less than 256 characters long." + }, + "floodlightActivityGroupId": { + "type": "string", + "description": "Floodlight activity group ID of this floodlight activity. This is a required field.", + "format": "int64" + }, + "floodlightActivityGroupName": { + "type": "string", + "description": "Name of the associated floodlight activity group. This is a read-only field." + }, + "floodlightActivityGroupTagString": { + "type": "string", + "description": "Tag string of the associated floodlight activity group. This is a read-only field." + }, + "floodlightActivityGroupType": { + "type": "string", + "description": "Type of the associated floodlight activity group. This is a read-only field.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this floodlight activity. If this field is left blank, the value will be copied over either from the activity group's floodlight configuration or from the existing activity's floodlight configuration.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "hidden": { + "type": "boolean", + "description": "Whether this activity is archived." + }, + "id": { + "type": "string", + "description": "ID of this floodlight activity. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity. This is a read-only, auto-generated field." + }, + "imageTagEnabled": { + "type": "boolean", + "description": "Whether the image tag is enabled for this activity." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivity\".", + "default": "dfareporting#floodlightActivity" + }, + "name": { + "type": "string", + "description": "Name of this floodlight activity. This is a required field. Must be less than 129 characters long and cannot contain quotes." + }, + "notes": { + "type": "string", + "description": "General notes or implementation instructions for the tag." + }, + "publisherTags": { + "type": "array", + "description": "Publisher dynamic floodlight tags.", + "items": { + "$ref": "FloodlightActivityPublisherDynamicTag" + } + }, + "secure": { + "type": "boolean", + "description": "Whether this tag should use SSL." + }, + "sslCompliant": { + "type": "boolean", + "description": "Whether the floodlight activity is SSL-compliant. This is a read-only field, its value detected by the system from the floodlight tags." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether this floodlight activity must be SSL-compliant." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight activity. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagFormat": { + "type": "string", + "description": "Tag format type for the floodlight activity. If left blank, the tag format will default to HTML.", + "enum": [ + "HTML", + "XHTML" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "tagString": { + "type": "string", + "description": "Value of the cat= paramter in the floodlight tag, which the ad servers use to identify the activity. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activities of the same activity group. This field is read-only after insertion." + }, + "userDefinedVariableTypes": { + "type": "array", + "description": "List of the user-defined variables used by this conversion tag. These map to the \"u[1-20]=\" in the tags. Each of these can have a user defined type.\nAcceptable values are:\n- \"U1\"\n- \"U2\"\n- \"U3\"\n- \"U4\"\n- \"U5\"\n- \"U6\"\n- \"U7\"\n- \"U8\"\n- \"U9\"\n- \"U10\"\n- \"U11\"\n- \"U12\"\n- \"U13\"\n- \"U14\"\n- \"U15\"\n- \"U16\"\n- \"U17\"\n- \"U18\"\n- \"U19\"\n- \"U20\"", + "items": { + "type": "string", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + } + }, + "FloodlightActivityDynamicTag": { + "id": "FloodlightActivityDynamicTag", + "type": "object", + "description": "Dynamic Tag", + "properties": { + "id": { + "type": "string", + "description": "ID of this dynamic tag. This is a read-only, auto-generated field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "Name of this tag." + }, + "tag": { + "type": "string", + "description": "Tag code." + } + } + }, + "FloodlightActivityGroup": { + "id": "FloodlightActivityGroup", + "type": "object", + "description": "Contains properties of a Floodlight activity group.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this floodlight activity group. If this field is left blank, the value will be copied over either from the floodlight configuration's advertiser or from the existing activity group's advertiser.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Floodlight configuration ID of this floodlight activity group. This is a required field.", + "format": "int64" + }, + "floodlightConfigurationIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight configuration. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this floodlight activity group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight activity group. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroup\".", + "default": "dfareporting#floodlightActivityGroup" + }, + "name": { + "type": "string", + "description": "Name of this floodlight activity group. This is a required field. Must be less than 65 characters long and cannot contain quotes." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight activity group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagString": { + "type": "string", + "description": "Value of the type= parameter in the floodlight tag, which the ad servers use to identify the activity group that the activity belongs to. This is optional: if empty, a new tag string will be generated for you. This string must be 1 to 8 characters long, with valid characters being [a-z][A-Z][0-9][-][ _ ]. This tag string must also be unique among activity groups of the same floodlight configuration. This field is read-only after insertion." + }, + "type": { + "type": "string", + "description": "Type of the floodlight activity group. This is a required field that is read-only after insertion.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "FloodlightActivityGroupsListResponse": { + "id": "FloodlightActivityGroupsListResponse", + "type": "object", + "description": "Floodlight Activity Group List Response", + "properties": { + "floodlightActivityGroups": { + "type": "array", + "description": "Floodlight activity group collection.", + "items": { + "$ref": "FloodlightActivityGroup" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightActivityGroupsListResponse\".", + "default": "dfareporting#floodlightActivityGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "FloodlightActivityPublisherDynamicTag": { + "id": "FloodlightActivityPublisherDynamicTag", + "type": "object", + "description": "Publisher Dynamic Tag", + "properties": { + "clickThrough": { + "type": "boolean", + "description": "Whether this tag is applicable only for click-throughs." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID of this dynamic tag. This is a write-only field that can be used as an alternative to the siteId field. When this resource is retrieved, only the siteId field will be populated.", + "format": "int64" + }, + "dynamicTag": { + "$ref": "FloodlightActivityDynamicTag", + "description": "Dynamic floodlight tag." + }, + "siteId": { + "type": "string", + "description": "Site ID of this dynamic tag.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "viewThrough": { + "type": "boolean", + "description": "Whether this tag is applicable only for view-throughs." + } + } + }, + "FloodlightConfiguration": { + "id": "FloodlightConfiguration", + "type": "object", + "description": "Contains properties of a Floodlight configuration.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of the parent advertiser of this floodlight configuration.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "analyticsDataSharingEnabled": { + "type": "boolean", + "description": "Whether advertiser data is shared with Google Analytics." + }, + "exposureToConversionEnabled": { + "type": "boolean", + "description": "Whether the exposure-to-conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." + }, + "firstDayOfWeek": { + "type": "string", + "description": "Day that will be counted as the first day of the week in reports. This is a required field.", + "enum": [ + "MONDAY", + "SUNDAY" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "ID of this floodlight configuration. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this floodlight configuration. This is a read-only, auto-generated field." + }, + "inAppAttributionTrackingEnabled": { + "type": "boolean", + "description": "Whether in-app attribution tracking is enabled." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfiguration\".", + "default": "dfareporting#floodlightConfiguration" + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this floodlight configuration." + }, + "naturalSearchConversionAttributionOption": { + "type": "string", + "description": "Types of attribution options for natural search conversions.", + "enum": [ + "EXCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_CONVERSION_ATTRIBUTION", + "INCLUDE_NATURAL_SEARCH_TIERED_CONVERSION_ATTRIBUTION" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "omnitureSettings": { + "$ref": "OmnitureSettings", + "description": "Settings for DCM Omniture integration." + }, + "standardVariableTypes": { + "type": "array", + "description": "List of standard variables enabled for this configuration.\n\nAcceptable values are:\n- \"ORD\"\n- \"NUM\"", + "items": { + "type": "string", + "enum": [ + "NUM", + "ORD", + "TRAN", + "U" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this floodlight configuration. This is a read-only field that can be left blank.", + "format": "int64" + }, + "tagSettings": { + "$ref": "TagSettings", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "thirdPartyAuthenticationTokens": { + "type": "array", + "description": "List of third-party authentication tokens enabled for this configuration.", + "items": { + "$ref": "ThirdPartyAuthenticationToken" + } + }, + "userDefinedVariableConfigurations": { + "type": "array", + "description": "List of user defined variables enabled for this configuration.", + "items": { + "$ref": "UserDefinedVariableConfiguration" + } + } + } + }, + "FloodlightConfigurationsListResponse": { + "id": "FloodlightConfigurationsListResponse", + "type": "object", + "description": "Floodlight Configuration List Response", + "properties": { + "floodlightConfigurations": { + "type": "array", + "description": "Floodlight configuration collection.", + "items": { + "$ref": "FloodlightConfiguration" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#floodlightConfigurationsListResponse\".", + "default": "dfareporting#floodlightConfigurationsListResponse" + } + } + }, + "FloodlightReportCompatibleFields": { + "id": "FloodlightReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"FlOODLIGHT\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#floodlightReportCompatibleFields.", + "default": "dfareporting#floodlightReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "FrequencyCap": { + "id": "FrequencyCap", + "type": "object", + "description": "Frequency Cap.", + "properties": { + "duration": { + "type": "string", + "description": "Duration of time, in seconds, for this frequency cap. The maximum duration is 90 days in seconds, or 7,776,000.", + "format": "int64" + }, + "impressions": { + "type": "string", + "description": "Number of times an individual user can be served the ad within the specified duration. The maximum allowed is 15.", + "format": "int64" + } + } + }, + "FsCommand": { + "id": "FsCommand", + "type": "object", + "description": "FsCommand.", + "properties": { + "left": { + "type": "integer", + "description": "Distance from the left of the browser.Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32" + }, + "positionOption": { + "type": "string", + "description": "Position in the browser where the window will open.", + "enum": [ + "CENTERED", + "DISTANCE_FROM_TOP_LEFT_CORNER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "top": { + "type": "integer", + "description": "Distance from the top of the browser. Applicable when positionOption is DISTANCE_FROM_TOP_LEFT_CORNER.", + "format": "int32" + }, + "windowHeight": { + "type": "integer", + "description": "Height of the window.", + "format": "int32" + }, + "windowWidth": { + "type": "integer", + "description": "Width of the window.", + "format": "int32" + } + } + }, + "GeoTargeting": { + "id": "GeoTargeting", + "type": "object", + "description": "Geographical Targeting.", + "properties": { + "cities": { + "type": "array", + "description": "Cities to be targeted. For each city only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a city, do not target or exclude the country of the city, and do not target the metro or region of the city.", + "items": { + "$ref": "City" + } + }, + "countries": { + "type": "array", + "description": "Countries to be targeted or excluded from targeting, depending on the setting of the excludeCountries field. For each country only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting or excluding a country, do not target regions, cities, metros, or postal codes in the same country.", + "items": { + "$ref": "Country" + } + }, + "excludeCountries": { + "type": "boolean", + "description": "Whether or not to exclude the countries in the countries field from targeting. If false, the countries field refers to countries which will be targeted by the ad." + }, + "metros": { + "type": "array", + "description": "Metros to be targeted. For each metro only dmaId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a metro, do not target or exclude the country of the metro.", + "items": { + "$ref": "Metro" + } + }, + "postalCodes": { + "type": "array", + "description": "Postal codes to be targeted. For each postal code only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a postal code, do not target or exclude the country of the postal code.", + "items": { + "$ref": "PostalCode" + } + }, + "regions": { + "type": "array", + "description": "Regions to be targeted. For each region only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting a region, do not target or exclude the country of the region.", + "items": { + "$ref": "Region" + } + } + } + }, + "InventoryItem": { + "id": "InventoryItem", + "type": "object", + "description": "Represents a buy from the DoubleClick Planning inventory store.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this inventory item.", + "format": "int64" + }, + "adSlots": { + "type": "array", + "description": "Ad slots of this inventory item. If this inventory item represents a standalone placement, there will be exactly one ad slot. If this inventory item represents a placement group, there will be more than one ad slot, each representing one child placement in that placement group.", + "items": { + "$ref": "AdSlot" + } + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this inventory item.", + "format": "int64" + }, + "contentCategoryId": { + "type": "string", + "description": "Content category ID of this inventory item.", + "format": "int64" + }, + "estimatedClickThroughRate": { + "type": "string", + "description": "Estimated click-through rate of this inventory item.", + "format": "int64" + }, + "estimatedConversionRate": { + "type": "string", + "description": "Estimated conversion rate of this inventory item.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this inventory item.", + "format": "int64" + }, + "inPlan": { + "type": "boolean", + "description": "Whether this inventory item is in plan." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItem\".", + "default": "dfareporting#inventoryItem" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this inventory item." + }, + "name": { + "type": "string", + "description": "Name of this inventory item. For standalone inventory items, this is the same name as that of its only ad slot. For group inventory items, this can differ from the name of any of its ad slots." + }, + "negotiationChannelId": { + "type": "string", + "description": "Negotiation channel ID of this inventory item.", + "format": "int64" + }, + "orderId": { + "type": "string", + "description": "Order ID of this inventory item.", + "format": "int64" + }, + "placementStrategyId": { + "type": "string", + "description": "Placement strategy ID of this inventory item.", + "format": "int64" + }, + "pricing": { + "$ref": "Pricing", + "description": "Pricing of this inventory item." + }, + "projectId": { + "type": "string", + "description": "Project ID of this inventory item.", + "format": "int64" + }, + "rfpId": { + "type": "string", + "description": "RFP ID of this inventory item.", + "format": "int64" + }, + "siteId": { + "type": "string", + "description": "ID of the site this inventory item is associated with.", + "format": "int64" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this inventory item.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "Type of inventory item.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "InventoryItemsListResponse": { + "id": "InventoryItemsListResponse", + "type": "object", + "description": "Inventory item List Response", + "properties": { + "inventoryItems": { + "type": "array", + "description": "Inventory item collection", + "items": { + "$ref": "InventoryItem" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#inventoryItemsListResponse\".", + "default": "dfareporting#inventoryItemsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + } + } + }, + "KeyValueTargetingExpression": { + "id": "KeyValueTargetingExpression", + "type": "object", + "description": "Key Value Targeting Expression.", + "properties": { + "expression": { + "type": "string", + "description": "Keyword expression being targeted by the ad." + } + } + }, + "LandingPage": { + "id": "LandingPage", + "type": "object", + "description": "Contains information about where a user's browser is taken after the user clicks an ad.", + "properties": { + "default": { + "type": "boolean", + "description": "Whether or not this landing page will be assigned to any ads or creatives that do not have a landing page assigned explicitly. Only one default landing page is allowed per campaign." + }, + "id": { + "type": "string", + "description": "ID of this landing page. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPage\".", + "default": "dfareporting#landingPage" + }, + "name": { + "type": "string", + "description": "Name of this landing page. This is a required field. It must be less than 256 characters long, and must be unique among landing pages of the same campaign." + }, + "url": { + "type": "string", + "description": "URL of this landing page. This is a required field." + } + } + }, + "LandingPagesListResponse": { + "id": "LandingPagesListResponse", + "type": "object", + "description": "Landing Page List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#landingPagesListResponse\".", + "default": "dfareporting#landingPagesListResponse" + }, + "landingPages": { + "type": "array", + "description": "Landing page collection", + "items": { + "$ref": "LandingPage" + } + } + } + }, + "Language": { + "id": "Language", + "type": "object", + "description": "Contains information about a language that can be targeted by ads.", + "properties": { + "id": { + "type": "string", + "description": "Language ID of this language. This is the ID used for targeting and generating reports.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#language\".", + "default": "dfareporting#language" + }, + "languageCode": { + "type": "string", + "description": "Format of language code is an ISO 639 two-letter language code optionally followed by an underscore followed by an ISO 3166 code. Examples are \"en\" for English or \"zh_CN\" for Simplified Chinese." + }, + "name": { + "type": "string", + "description": "Name of this language." + } + } + }, + "LanguageTargeting": { + "id": "LanguageTargeting", + "type": "object", + "description": "Language Targeting.", + "properties": { + "languages": { + "type": "array", + "description": "Languages that this ad targets. For each language only languageId is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Language" + } + } + } + }, + "LanguagesListResponse": { + "id": "LanguagesListResponse", + "type": "object", + "description": "Language List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#languagesListResponse\".", + "default": "dfareporting#languagesListResponse" + }, + "languages": { + "type": "array", + "description": "Language collection.", + "items": { + "$ref": "Language" + } + } + } + }, + "LastModifiedInfo": { + "id": "LastModifiedInfo", + "type": "object", + "description": "Modification timestamp.", + "properties": { + "time": { + "type": "string", + "description": "Timestamp of the last change in milliseconds since epoch.", + "format": "int64" + } + } + }, + "ListPopulationClause": { + "id": "ListPopulationClause", + "type": "object", + "description": "A group clause made up of list population terms representing constraints joined by ORs.", + "properties": { + "terms": { + "type": "array", + "description": "Terms of this list population clause. Each clause is made up of list population terms representing constraints and are joined by ORs.", + "items": { + "$ref": "ListPopulationTerm" + } + } + } + }, + "ListPopulationRule": { + "id": "ListPopulationRule", + "type": "object", + "description": "Remarketing List Population Rule.", + "properties": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID associated with this rule. This field can be left blank.", + "format": "int64" + }, + "floodlightActivityName": { + "type": "string", + "description": "Name of floodlight activity associated with this rule. This is a read-only, auto-generated field." + }, + "listPopulationClauses": { + "type": "array", + "description": "Clauses that make up this list population rule. Clauses are joined by ANDs, and the clauses themselves are made up of list population terms which are joined by ORs.", + "items": { + "$ref": "ListPopulationClause" + } + } + } + }, + "ListPopulationTerm": { + "id": "ListPopulationTerm", + "type": "object", + "description": "Remarketing List Population Rule Term.", + "properties": { + "contains": { + "type": "boolean", + "description": "Will be true if the term should check if the user is in the list and false if the term should check if the user is not in the list. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM. False by default." + }, + "negation": { + "type": "boolean", + "description": "Whether to negate the comparison result of this term during rule evaluation. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." + }, + "operator": { + "type": "string", + "description": "Comparison operator of this term. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM.", + "enum": [ + "NUM_EQUALS", + "NUM_GREATER_THAN", + "NUM_GREATER_THAN_EQUAL", + "NUM_LESS_THAN", + "NUM_LESS_THAN_EQUAL", + "STRING_CONTAINS", + "STRING_EQUALS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + }, + "remarketingListId": { + "type": "string", + "description": "ID of the list in question. This field is only relevant when type is set to LIST_MEMBERSHIP_TERM.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "List population term type determines the applicable fields in this object. If left unset or set to CUSTOM_VARIABLE_TERM, then variableName, variableFriendlyName, operator, value, and negation are applicable. If set to LIST_MEMBERSHIP_TERM then remarketingListId and contains are applicable. If set to REFERRER_TERM then operator, value, and negation are applicable.", + "enum": [ + "CUSTOM_VARIABLE_TERM", + "LIST_MEMBERSHIP_TERM", + "REFERRER_TERM" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "value": { + "type": "string", + "description": "Literal to compare the variable to. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM or REFERRER_TERM." + }, + "variableFriendlyName": { + "type": "string", + "description": "Friendly name of this term's variable. This is a read-only, auto-generated field. This field is only relevant when type is left unset or set to CUSTOM_VARIABLE_TERM." + }, + "variableName": { + "type": "string", + "description": "Name of the variable (U1, U2, etc.) being compared in this term. This field is only relevant when type is set to null, CUSTOM_VARIABLE_TERM or REFERRER_TERM." + } + } + }, + "ListTargetingExpression": { + "id": "ListTargetingExpression", + "type": "object", + "description": "Remarketing List Targeting Expression.", + "properties": { + "expression": { + "type": "string", + "description": "Expression describing which lists are being targeted by the ad." + } + } + }, + "LookbackConfiguration": { + "id": "LookbackConfiguration", + "type": "object", + "description": "Lookback configuration settings.", + "properties": { + "clickDuration": { + "type": "integer", + "description": "Lookback window, in days, from the last time a given user clicked on one of your ads. If you enter 0, clicks will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.", + "format": "int32" + }, + "postImpressionActivitiesDuration": { + "type": "integer", + "description": "Lookback window, in days, from the last time a given user viewed one of your ads. If you enter 0, impressions will not be considered as triggering events for floodlight tracking. If you leave this field blank, the default value for your account will be used.", + "format": "int32" + } + } + }, + "Metric": { + "id": "Metric", + "type": "object", + "description": "Represents a metric.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#metric.", + "default": "dfareporting#metric" + }, + "name": { + "type": "string", + "description": "The metric name, e.g. dfa:impressions" + } + } + }, + "Metro": { + "id": "Metro", + "type": "object", + "description": "Contains information about a metro region that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this metro region belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this metro region belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this metro region.", + "format": "int64" + }, + "dmaId": { + "type": "string", + "description": "DMA ID of this metro region. This is the ID used for targeting and generating reports, and is equivalent to metro_code.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metro\".", + "default": "dfareporting#metro" + }, + "metroCode": { + "type": "string", + "description": "Metro code of this metro region. This is equivalent to dma_id." + }, + "name": { + "type": "string", + "description": "Name of this metro region." + } + } + }, + "MetrosListResponse": { + "id": "MetrosListResponse", + "type": "object", + "description": "Metro List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#metrosListResponse\".", + "default": "dfareporting#metrosListResponse" + }, + "metros": { + "type": "array", + "description": "Metro collection.", + "items": { + "$ref": "Metro" + } + } + } + }, + "MobileCarrier": { + "id": "MobileCarrier", + "type": "object", + "description": "Contains information about a mobile carrier that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this mobile carrier belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this mobile carrier belongs.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this mobile carrier.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarrier\".", + "default": "dfareporting#mobileCarrier" + }, + "name": { + "type": "string", + "description": "Name of this mobile carrier." + } + } + }, + "MobileCarriersListResponse": { + "id": "MobileCarriersListResponse", + "type": "object", + "description": "Mobile Carrier List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#mobileCarriersListResponse\".", + "default": "dfareporting#mobileCarriersListResponse" + }, + "mobileCarriers": { + "type": "array", + "description": "Mobile carrier collection.", + "items": { + "$ref": "MobileCarrier" + } + } + } + }, + "ObjectFilter": { + "id": "ObjectFilter", + "type": "object", + "description": "Object Filter.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#objectFilter\".", + "default": "dfareporting#objectFilter" + }, + "objectIds": { + "type": "array", + "description": "Applicable when status is ASSIGNED. The user has access to objects with these object IDs.", + "items": { + "type": "string", + "format": "int64" + } + }, + "status": { + "type": "string", + "description": "Status of the filter. NONE means the user has access to none of the objects. ALL means the user has access to all objects. ASSIGNED means the user has access to the objects with IDs in the objectIds list.", + "enum": [ + "ALL", + "ASSIGNED", + "NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "OffsetPosition": { + "id": "OffsetPosition", + "type": "object", + "description": "Offset Position.", + "properties": { + "left": { + "type": "integer", + "description": "Offset distance from left side of an asset or a window.", + "format": "int32" + }, + "top": { + "type": "integer", + "description": "Offset distance from top side of an asset or a window.", + "format": "int32" + } + } + }, + "OmnitureSettings": { + "id": "OmnitureSettings", + "type": "object", + "description": "Omniture Integration Settings.", + "properties": { + "omnitureCostDataEnabled": { + "type": "boolean", + "description": "Whether placement cost data will be sent to Omniture. This property can be enabled only if omnitureIntegrationEnabled is true." + }, + "omnitureIntegrationEnabled": { + "type": "boolean", + "description": "Whether Omniture integration is enabled. This property can be enabled only when the \"Advanced Ad Serving\" account setting is enabled." + } + } + }, + "OperatingSystem": { + "id": "OperatingSystem", + "type": "object", + "description": "Contains information about an operating system that can be targeted by ads.", + "properties": { + "dartId": { + "type": "string", + "description": "DART ID of this operating system. This is the ID used for targeting.", + "format": "int64" + }, + "desktop": { + "type": "boolean", + "description": "Whether this operating system is for desktop." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystem\".", + "default": "dfareporting#operatingSystem" + }, + "mobile": { + "type": "boolean", + "description": "Whether this operating system is for mobile." + }, + "name": { + "type": "string", + "description": "Name of this operating system." + } + } + }, + "OperatingSystemVersion": { + "id": "OperatingSystemVersion", + "type": "object", + "description": "Contains information about a particular version of an operating system that can be targeted by ads.", + "properties": { + "id": { + "type": "string", + "description": "ID of this operating system version.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersion\".", + "default": "dfareporting#operatingSystemVersion" + }, + "majorVersion": { + "type": "string", + "description": "Major version (leftmost number) of this operating system version." + }, + "minorVersion": { + "type": "string", + "description": "Minor version (number after the first dot) of this operating system version." + }, + "name": { + "type": "string", + "description": "Name of this operating system version." + }, + "operatingSystem": { + "$ref": "OperatingSystem", + "description": "Operating system of this operating system version." + } + } + }, + "OperatingSystemVersionsListResponse": { + "id": "OperatingSystemVersionsListResponse", + "type": "object", + "description": "Operating System Version List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemVersionsListResponse\".", + "default": "dfareporting#operatingSystemVersionsListResponse" + }, + "operatingSystemVersions": { + "type": "array", + "description": "Operating system version collection.", + "items": { + "$ref": "OperatingSystemVersion" + } + } + } + }, + "OperatingSystemsListResponse": { + "id": "OperatingSystemsListResponse", + "type": "object", + "description": "Operating System List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#operatingSystemsListResponse\".", + "default": "dfareporting#operatingSystemsListResponse" + }, + "operatingSystems": { + "type": "array", + "description": "Operating system collection.", + "items": { + "$ref": "OperatingSystem" + } + } + } + }, + "OptimizationActivity": { + "id": "OptimizationActivity", + "type": "object", + "description": "Creative optimization activity.", + "properties": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID of this optimization activity. This is a required field.", + "format": "int64" + }, + "floodlightActivityIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the floodlight activity. This is a read-only, auto-generated field." + }, + "weight": { + "type": "integer", + "description": "Weight associated with this optimization. Must be greater than 1. The weight assigned will be understood in proportion to the weights assigned to the other optimization activities.", + "format": "int32" + } + } + }, + "Order": { + "id": "Order", + "type": "object", + "description": "Describes properties of a DoubleClick Planning order.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this order.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this order.", + "format": "int64" + }, + "approverUserProfileIds": { + "type": "array", + "description": "IDs for users that have to approve documents created for this order.", + "items": { + "type": "string", + "format": "int64" + } + }, + "buyerInvoiceId": { + "type": "string", + "description": "Buyer invoice ID associated with this order." + }, + "buyerOrganizationName": { + "type": "string", + "description": "Name of the buyer organization." + }, + "comments": { + "type": "string", + "description": "Comments in this order." + }, + "contacts": { + "type": "array", + "description": "Contacts for this order.", + "items": { + "$ref": "OrderContact" + } + }, + "id": { + "type": "string", + "description": "ID of this order. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#order\".", + "default": "dfareporting#order" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this order." + }, + "name": { + "type": "string", + "description": "Name of this order." + }, + "notes": { + "type": "string", + "description": "Notes of this order." + }, + "planningTermId": { + "type": "string", + "description": "ID of the terms and conditions template used in this order.", + "format": "int64" + }, + "projectId": { + "type": "string", + "description": "Project ID of this order.", + "format": "int64" + }, + "sellerOrderId": { + "type": "string", + "description": "Seller order ID associated with this order." + }, + "sellerOrganizationName": { + "type": "string", + "description": "Name of the seller organization." + }, + "siteId": { + "type": "array", + "description": "Site IDs this order is associated with.", + "items": { + "type": "string", + "format": "int64" + } + }, + "siteNames": { + "type": "array", + "description": "Free-form site names this order is associated with.", + "items": { + "type": "string" + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this order.", + "format": "int64" + }, + "termsAndConditions": { + "type": "string", + "description": "Terms and conditions of this order." + } + } + }, + "OrderContact": { + "id": "OrderContact", + "type": "object", + "description": "Contact of an order.", + "properties": { + "contactInfo": { + "type": "string", + "description": "Free-form information about this contact. It could be any information related to this contact in addition to type, title, name, and signature user profile ID." + }, + "contactName": { + "type": "string", + "description": "Name of this contact." + }, + "contactTitle": { + "type": "string", + "description": "Title of this contact." + }, + "contactType": { + "type": "string", + "description": "Type of this contact.", + "enum": [ + "PLANNING_ORDER_CONTACT_BUYER_BILLING_CONTACT", + "PLANNING_ORDER_CONTACT_BUYER_CONTACT", + "PLANNING_ORDER_CONTACT_SELLER_CONTACT" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "signatureUserProfileId": { + "type": "string", + "description": "ID of the user profile containing the signature that will be embedded into order documents.", + "format": "int64" + } + } + }, + "OrderDocument": { + "id": "OrderDocument", + "type": "object", + "description": "Contains properties of a DoubleClick Planning order document.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this order document.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this order document.", + "format": "int64" + }, + "amendedOrderDocumentId": { + "type": "string", + "description": "The amended order document ID of this order document. An order document can be created by optionally amending another order document so that the change history can be preserved.", + "format": "int64" + }, + "approvedByUserProfileIds": { + "type": "array", + "description": "IDs of users who have approved this order document.", + "items": { + "type": "string", + "format": "int64" + } + }, + "cancelled": { + "type": "boolean", + "description": "Whether this order document is cancelled." + }, + "createdInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this order document." + }, + "effectiveDate": { + "type": "string", + "description": "Effective date of this order document.", + "format": "date" + }, + "id": { + "type": "string", + "description": "ID of this order document.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocument\".", + "default": "dfareporting#orderDocument" + }, + "lastSentRecipients": { + "type": "array", + "description": "List of email addresses that received the last sent document.", + "items": { + "type": "string" + } + }, + "lastSentTime": { + "type": "string", + "description": "Timestamp of the last email sent with this order document.", + "format": "date-time" + }, + "orderId": { + "type": "string", + "description": "ID of the order from which this order document is created.", + "format": "int64" + }, + "projectId": { + "type": "string", + "description": "Project ID of this order document.", + "format": "int64" + }, + "signed": { + "type": "boolean", + "description": "Whether this order document has been signed." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this order document.", + "format": "int64" + }, + "title": { + "type": "string", + "description": "Title of this order document." + }, + "type": { + "type": "string", + "description": "Type of this order document", + "enum": [ + "PLANNING_ORDER_TYPE_CHANGE_ORDER", + "PLANNING_ORDER_TYPE_INSERTION_ORDER" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "OrderDocumentsListResponse": { + "id": "OrderDocumentsListResponse", + "type": "object", + "description": "Order document List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#orderDocumentsListResponse\".", + "default": "dfareporting#orderDocumentsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "orderDocuments": { + "type": "array", + "description": "Order document collection", + "items": { + "$ref": "OrderDocument" + } + } + } + }, + "OrdersListResponse": { + "id": "OrdersListResponse", + "type": "object", + "description": "Order List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#ordersListResponse\".", + "default": "dfareporting#ordersListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "orders": { + "type": "array", + "description": "Order collection.", + "items": { + "$ref": "Order" + } + } + } + }, + "PathToConversionReportCompatibleFields": { + "id": "PathToConversionReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "conversionDimensions": { + "type": "array", + "description": "Conversion dimensions which are compatible to be selected in the \"conversionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "customFloodlightVariables": { + "type": "array", + "description": "Custom floodlight variables which are compatible to be selected in the \"customFloodlightVariables\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#pathToConversionReportCompatibleFields.", + "default": "dfareporting#pathToConversionReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "perInteractionDimensions": { + "type": "array", + "description": "Per-interaction dimensions which are compatible to be selected in the \"perInteractionDimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + } + } + }, + "Placement": { + "id": "Placement", + "type": "object", + "description": "Contains properties of a placement.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement. This field can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this placement. This field can be left blank.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this placement is archived." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this placement. This field is a required field on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "comment": { + "type": "string", + "description": "Comments for this placement." + }, + "compatibility": { + "type": "string", + "description": "Placement compatibility. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering on desktop, on mobile devices or in mobile apps for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are no longer allowed for new placement insertions. Instead, use DISPLAY or DISPLAY_INTERSTITIAL. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard. This field is required on insertion.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "contentCategoryId": { + "type": "string", + "description": "ID of the content category assigned to this placement.", + "format": "int64" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement. This is a read-only field." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID of this placement. On insert, you must set either this field or the siteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "type": "string", + "description": "External ID for this placement." + }, + "id": { + "type": "string", + "description": "ID of this placement. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement. This is a read-only, auto-generated field." + }, + "keyName": { + "type": "string", + "description": "Key name of this placement. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placement\".", + "default": "dfareporting#placement" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement. This is a read-only field." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this placement." + }, + "name": { + "type": "string", + "description": "Name of this placement.This is a required field and must be less than 256 characters long." + }, + "paymentApproved": { + "type": "boolean", + "description": "Whether payment was approved for this placement. This is a read-only field relevant only to publisher-paid placements." + }, + "paymentSource": { + "type": "string", + "description": "Payment source for this placement. This is a required field that is read-only after insertion.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "placementGroupId": { + "type": "string", + "description": "ID of this placement's group, if applicable.", + "format": "int64" + }, + "placementGroupIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement group. This is a read-only, auto-generated field." + }, + "placementStrategyId": { + "type": "string", + "description": "ID of the placement strategy assigned to this placement.", + "format": "int64" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement. This field is required on insertion, specifically subfields startDate, endDate and pricingType." + }, + "primary": { + "type": "boolean", + "description": "Whether this placement is the primary placement of a roadblock (placement group). You cannot change this field from true to false. Setting this field to true will automatically set the primary field on the original primary placement of the roadblock to false, and it will automatically set the roadblock's primaryPlacementId field to the ID of this placement." + }, + "publisherUpdateInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the last publisher update. This is a read-only field." + }, + "siteId": { + "type": "string", + "description": "Site ID associated with this placement. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "size": { + "$ref": "Size", + "description": "Size associated with this placement. When inserting or updating a placement, only the size ID field is used. This field is required on insertion." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether creatives assigned to this placement must be SSL-compliant." + }, + "status": { + "type": "string", + "description": "Third-party placement status.", + "enum": [ + "ACKNOWLEDGE_ACCEPTANCE", + "ACKNOWLEDGE_REJECTION", + "DRAFT", + "PAYMENT_ACCEPTED", + "PAYMENT_REJECTED", + "PENDING_REVIEW" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this placement. This field can be left blank.", + "format": "int64" + }, + "tagFormats": { + "type": "array", + "description": "Tag formats to generate for this placement. This field is required on insertion.\nAcceptable values are:\n- \"PLACEMENT_TAG_STANDARD\"\n- \"PLACEMENT_TAG_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_IFRAME_ILAYER\"\n- \"PLACEMENT_TAG_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT\"\n- \"PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT\"\n- \"PLACEMENT_TAG_CLICK_COMMANDS\"\n- \"PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH\"\n- \"PLACEMENT_TAG_TRACKING\"\n- \"PLACEMENT_TAG_TRACKING_IFRAME\"\n- \"PLACEMENT_TAG_TRACKING_JAVASCRIPT\"", + "items": { + "type": "string", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Tag settings for this placement." + } + } + }, + "PlacementAssignment": { + "id": "PlacementAssignment", + "type": "object", + "description": "Placement Assignment.", + "properties": { + "active": { + "type": "boolean", + "description": "Whether this placement assignment is active. When true, the placement will be included in the ad's rotation." + }, + "placementId": { + "type": "string", + "description": "ID of the placement to be assigned. This is a required field.", + "format": "int64" + }, + "placementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the placement. This is a read-only, auto-generated field." + }, + "sslRequired": { + "type": "boolean", + "description": "Whether the placement to be assigned requires SSL. This is a read-only field that is auto-generated when the ad is inserted or updated." + } + } + }, + "PlacementGroup": { + "id": "PlacementGroup", + "type": "object", + "description": "Contains properties of a package or roadblock.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this placement group. This is a required field on insertion.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "archived": { + "type": "boolean", + "description": "Whether this placement group is archived." + }, + "campaignId": { + "type": "string", + "description": "Campaign ID of this placement group. This field is required on insertion.", + "format": "int64" + }, + "campaignIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the campaign. This is a read-only, auto-generated field." + }, + "childPlacementIds": { + "type": "array", + "description": "IDs of placements which are assigned to this placement group. This is a read-only, auto-generated field.", + "items": { + "type": "string", + "format": "int64" + } + }, + "comment": { + "type": "string", + "description": "Comments for this placement group." + }, + "contentCategoryId": { + "type": "string", + "description": "ID of the content category assigned to this placement group.", + "format": "int64" + }, + "createInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the creation of this placement group. This is a read-only field." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site ID associated with this placement group. On insert, you must set either this field or the site_id field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "externalId": { + "type": "string", + "description": "External ID for this placement." + }, + "id": { + "type": "string", + "description": "ID of this placement group. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this placement group. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroup\".", + "default": "dfareporting#placementGroup" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this placement group. This is a read-only field." + }, + "name": { + "type": "string", + "description": "Name of this placement group. This is a required field and must be less than 256 characters long." + }, + "placementGroupType": { + "type": "string", + "description": "Type of this placement group. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting. This field is required on insertion.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "placementStrategyId": { + "type": "string", + "description": "ID of the placement strategy assigned to this placement group.", + "format": "int64" + }, + "pricingSchedule": { + "$ref": "PricingSchedule", + "description": "Pricing schedule of this placement group. This field is required on insertion." + }, + "primaryPlacementId": { + "type": "string", + "description": "ID of the primary placement, used to calculate the media cost of a roadblock (placement group). Modifying this field will automatically modify the primary field on all affected roadblock child placements.", + "format": "int64" + }, + "primaryPlacementIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the primary placement. This is a read-only, auto-generated field." + }, + "siteId": { + "type": "string", + "description": "Site ID associated with this placement group. On insert, you must set either this field or the directorySiteId field to specify the site associated with this placement group. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "siteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the site. This is a read-only, auto-generated field." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this placement group. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "PlacementGroupsListResponse": { + "id": "PlacementGroupsListResponse", + "type": "object", + "description": "Placement Group List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementGroupsListResponse\".", + "default": "dfareporting#placementGroupsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placementGroups": { + "type": "array", + "description": "Placement group collection.", + "items": { + "$ref": "PlacementGroup" + } + } + } + }, + "PlacementStrategiesListResponse": { + "id": "PlacementStrategiesListResponse", + "type": "object", + "description": "Placement Strategy List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategiesListResponse\".", + "default": "dfareporting#placementStrategiesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placementStrategies": { + "type": "array", + "description": "Placement strategy collection.", + "items": { + "$ref": "PlacementStrategy" + } + } + } + }, + "PlacementStrategy": { + "id": "PlacementStrategy", + "type": "object", + "description": "Contains properties of a placement strategy.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this placement strategy.This is a read-only field that can be left blank.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this placement strategy. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementStrategy\".", + "default": "dfareporting#placementStrategy" + }, + "name": { + "type": "string", + "description": "Name of this placement strategy. This is a required field. It must be less than 256 characters long and unique among placement strategies of the same account." + } + } + }, + "PlacementTag": { + "id": "PlacementTag", + "type": "object", + "description": "Placement Tag", + "properties": { + "placementId": { + "type": "string", + "description": "Placement ID", + "format": "int64" + }, + "tagDatas": { + "type": "array", + "description": "Tags generated for this placement.", + "items": { + "$ref": "TagData" + } + } + } + }, + "PlacementsGenerateTagsResponse": { + "id": "PlacementsGenerateTagsResponse", + "type": "object", + "description": "Placement GenerateTags Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsGenerateTagsResponse\".", + "default": "dfareporting#placementsGenerateTagsResponse" + }, + "placementTags": { + "type": "array", + "description": "Set of generated tags for the specified placements.", + "items": { + "$ref": "PlacementTag" + } + } + } + }, + "PlacementsListResponse": { + "id": "PlacementsListResponse", + "type": "object", + "description": "Placement List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#placementsListResponse\".", + "default": "dfareporting#placementsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "placements": { + "type": "array", + "description": "Placement collection.", + "items": { + "$ref": "Placement" + } + } + } + }, + "PlatformType": { + "id": "PlatformType", + "type": "object", + "description": "Contains information about a platform type that can be targeted by ads.", + "properties": { + "id": { + "type": "string", + "description": "ID of this platform type.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformType\".", + "default": "dfareporting#platformType" + }, + "name": { + "type": "string", + "description": "Name of this platform type." + } + } + }, + "PlatformTypesListResponse": { + "id": "PlatformTypesListResponse", + "type": "object", + "description": "Platform Type List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#platformTypesListResponse\".", + "default": "dfareporting#platformTypesListResponse" + }, + "platformTypes": { + "type": "array", + "description": "Platform type collection.", + "items": { + "$ref": "PlatformType" + } + } + } + }, + "PopupWindowProperties": { + "id": "PopupWindowProperties", + "type": "object", + "description": "Popup Window Properties.", + "properties": { + "dimension": { + "$ref": "Size", + "description": "Popup dimension for a creative. This is a read-only field. Applicable to the following creative types: all RICH_MEDIA and all VPAID" + }, + "offset": { + "$ref": "OffsetPosition", + "description": "Upper-left corner coordinates of the popup window. Applicable if positionType is COORDINATES." + }, + "positionType": { + "type": "string", + "description": "Popup window position either centered or at specific coordinate.", + "enum": [ + "CENTER", + "COORDINATES" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "showAddressBar": { + "type": "boolean", + "description": "Whether to display the browser address bar." + }, + "showMenuBar": { + "type": "boolean", + "description": "Whether to display the browser menu bar." + }, + "showScrollBar": { + "type": "boolean", + "description": "Whether to display the browser scroll bar." + }, + "showStatusBar": { + "type": "boolean", + "description": "Whether to display the browser status bar." + }, + "showToolBar": { + "type": "boolean", + "description": "Whether to display the browser tool bar." + }, + "title": { + "type": "string", + "description": "Title of popup window." + } + } + }, + "PostalCode": { + "id": "PostalCode", + "type": "object", + "description": "Contains information about a postal code that can be targeted by ads.", + "properties": { + "code": { + "type": "string", + "description": "Postal code. This is equivalent to the id field." + }, + "countryCode": { + "type": "string", + "description": "Country code of the country to which this postal code belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this postal code belongs.", + "format": "int64" + }, + "id": { + "type": "string", + "description": "ID of this postal code." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCode\".", + "default": "dfareporting#postalCode" + } + } + }, + "PostalCodesListResponse": { + "id": "PostalCodesListResponse", + "type": "object", + "description": "Postal Code List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#postalCodesListResponse\".", + "default": "dfareporting#postalCodesListResponse" + }, + "postalCodes": { + "type": "array", + "description": "Postal code collection.", + "items": { + "$ref": "PostalCode" + } + } + } + }, + "Pricing": { + "id": "Pricing", + "type": "object", + "description": "Pricing Information", + "properties": { + "capCostType": { + "type": "string", + "description": "Cap cost type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_CAP_COST_TYPE_CUMULATIVE", + "PLANNING_PLACEMENT_CAP_COST_TYPE_MONTHLY", + "PLANNING_PLACEMENT_CAP_COST_TYPE_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "endDate": { + "type": "string", + "description": "End date of this inventory item.", + "format": "date" + }, + "flights": { + "type": "array", + "description": "Flights of this inventory item. A flight (a.k.a. pricing period) represents the inventory item pricing information for a specific period of time.", + "items": { + "$ref": "Flight" + } + }, + "groupType": { + "type": "string", + "description": "Group type of this inventory item if it represents a placement group. Is null otherwise. There are two type of placement groups: PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE is a simple group of inventory items that acts as a single pricing point for a group of tags. PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK is a group of inventory items that not only acts as a single pricing point, but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned inventory items to be marked as primary.", + "enum": [ + "PLANNING_PLACEMENT_GROUP_TYPE_PACKAGE", + "PLANNING_PLACEMENT_GROUP_TYPE_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "pricingType": { + "type": "string", + "description": "Pricing type of this inventory item.", + "enum": [ + "PLANNING_PLACEMENT_PRICING_TYPE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_CPA", + "PLANNING_PLACEMENT_PRICING_TYPE_CPC", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM", + "PLANNING_PLACEMENT_PRICING_TYPE_CPM_ACTIVEVIEW", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_CLICKS", + "PLANNING_PLACEMENT_PRICING_TYPE_FLAT_RATE_IMPRESSIONS", + "PLANNING_PLACEMENT_PRICING_TYPE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Start date of this inventory item.", + "format": "date" + } + } + }, + "PricingSchedule": { + "id": "PricingSchedule", + "type": "object", + "description": "Pricing Schedule", + "properties": { + "capCostOption": { + "type": "string", + "description": "Placement cap cost option.", + "enum": [ + "CAP_COST_CUMULATIVE", + "CAP_COST_MONTHLY", + "CAP_COST_NONE" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "disregardOverdelivery": { + "type": "boolean", + "description": "Whether cap costs are ignored by ad serving." + }, + "endDate": { + "type": "string", + "description": "Placement end date. This date must be later than, or the same day as, the placement start date, but not later than the campaign end date. If, for example, you set 6/25/2015 as both the start and end dates, the effective placement date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date" + }, + "flighted": { + "type": "boolean", + "description": "Whether this placement is flighted. If true, pricing periods will be computed automatically." + }, + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID associated with this placement. This field should be set when placement pricing type is set to PRICING_TYPE_CPA.", + "format": "int64" + }, + "pricingPeriods": { + "type": "array", + "description": "Pricing periods for this placement.", + "items": { + "$ref": "PricingSchedulePricingPeriod" + } + }, + "pricingType": { + "type": "string", + "description": "Placement pricing type. This field is required on insertion.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Placement start date. This date must be later than, or the same day as, the campaign start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error. This field is required on insertion.", + "format": "date" + }, + "testingStartDate": { + "type": "string", + "description": "Testing start date of this placement. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date" + } + } + }, + "PricingSchedulePricingPeriod": { + "id": "PricingSchedulePricingPeriod", + "type": "object", + "description": "Pricing Period", + "properties": { + "endDate": { + "type": "string", + "description": "Pricing period end date. This date must be later than, or the same day as, the pricing period start date, but not later than the placement end date. The period end date can be the same date as the period start date. If, for example, you set 6/25/2015 as both the start and end dates, the effective pricing period date is just that day only, 6/25/2015. The hours, minutes, and seconds of the end date should not be set, as doing so will result in an error.", + "format": "date" + }, + "pricingComment": { + "type": "string", + "description": "Comments for this pricing period." + }, + "rateOrCostNanos": { + "type": "string", + "description": "Rate or cost of this pricing period.", + "format": "int64" + }, + "startDate": { + "type": "string", + "description": "Pricing period start date. This date must be later than, or the same day as, the placement start date. The hours, minutes, and seconds of the start date should not be set, as doing so will result in an error.", + "format": "date" + }, + "units": { + "type": "string", + "description": "Units of this pricing period.", + "format": "int64" + } + } + }, + "Project": { + "id": "Project", + "type": "object", + "description": "Contains properties of a DoubleClick Planning project.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this project.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this project.", + "format": "int64" + }, + "audienceAgeGroup": { + "type": "string", + "description": "Audience age group of this project.", + "enum": [ + "PLANNING_AUDIENCE_AGE_18_24", + "PLANNING_AUDIENCE_AGE_25_34", + "PLANNING_AUDIENCE_AGE_35_44", + "PLANNING_AUDIENCE_AGE_45_54", + "PLANNING_AUDIENCE_AGE_55_64", + "PLANNING_AUDIENCE_AGE_65_OR_MORE", + "PLANNING_AUDIENCE_AGE_UNKNOWN" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + }, + "audienceGender": { + "type": "string", + "description": "Audience gender of this project.", + "enum": [ + "PLANNING_AUDIENCE_GENDER_FEMALE", + "PLANNING_AUDIENCE_GENDER_MALE" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "budget": { + "type": "string", + "description": "Budget of this project in the currency specified by the current account. The value stored in this field represents only the non-fractional amount. For example, for USD, the smallest value that can be represented by this field is 1 US dollar.", + "format": "int64" + }, + "clientBillingCode": { + "type": "string", + "description": "Client billing code of this project." + }, + "clientName": { + "type": "string", + "description": "Name of the project client." + }, + "endDate": { + "type": "string", + "description": "End date of the project.", + "format": "date" + }, + "id": { + "type": "string", + "description": "ID of this project. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#project\".", + "default": "dfareporting#project" + }, + "lastModifiedInfo": { + "$ref": "LastModifiedInfo", + "description": "Information about the most recent modification of this project." + }, + "name": { + "type": "string", + "description": "Name of this project." + }, + "overview": { + "type": "string", + "description": "Overview of this project." + }, + "startDate": { + "type": "string", + "description": "Start date of the project.", + "format": "date" + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this project.", + "format": "int64" + }, + "targetClicks": { + "type": "string", + "description": "Number of clicks that the advertiser is targeting.", + "format": "int64" + }, + "targetConversions": { + "type": "string", + "description": "Number of conversions that the advertiser is targeting.", + "format": "int64" + }, + "targetCpaNanos": { + "type": "string", + "description": "CPA that the advertiser is targeting.", + "format": "int64" + }, + "targetCpcNanos": { + "type": "string", + "description": "CPC that the advertiser is targeting.", + "format": "int64" + }, + "targetCpmActiveViewNanos": { + "type": "string", + "description": "vCPM from Active View that the advertiser is targeting.", + "format": "int64" + }, + "targetCpmNanos": { + "type": "string", + "description": "CPM that the advertiser is targeting.", + "format": "int64" + }, + "targetImpressions": { + "type": "string", + "description": "Number of impressions that the advertiser is targeting.", + "format": "int64" + } + } + }, + "ProjectsListResponse": { + "id": "ProjectsListResponse", + "type": "object", + "description": "Project List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#projectsListResponse\".", + "default": "dfareporting#projectsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "projects": { + "type": "array", + "description": "Project collection.", + "items": { + "$ref": "Project" + } + } + } + }, + "ReachReportCompatibleFields": { + "id": "ReachReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"REACH\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#reachReportCompatibleFields.", + "default": "dfareporting#reachReportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "pivotedActivityMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "reachByFrequencyMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"reachByFrequencyMetricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "Recipient": { + "id": "Recipient", + "type": "object", + "description": "Represents a recipient.", + "properties": { + "deliveryType": { + "type": "string", + "description": "The delivery type for the recipient.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ], + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "email": { + "type": "string", + "description": "The email address of the recipient.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#recipient.", + "default": "dfareporting#recipient" + } + } + }, + "Region": { + "id": "Region", + "type": "object", + "description": "Contains information about a region that can be targeted by ads.", + "properties": { + "countryCode": { + "type": "string", + "description": "Country code of the country to which this region belongs." + }, + "countryDartId": { + "type": "string", + "description": "DART ID of the country to which this region belongs.", + "format": "int64" + }, + "dartId": { + "type": "string", + "description": "DART ID of this region.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#region\".", + "default": "dfareporting#region" + }, + "name": { + "type": "string", + "description": "Name of this region." + }, + "regionCode": { + "type": "string", + "description": "Region code." + } + } + }, + "RegionsListResponse": { + "id": "RegionsListResponse", + "type": "object", + "description": "Region List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#regionsListResponse\".", + "default": "dfareporting#regionsListResponse" + }, + "regions": { + "type": "array", + "description": "Region collection.", + "items": { + "$ref": "Region" + } + } + } + }, + "RemarketingList": { + "id": "RemarketingList", + "type": "object", + "description": "Contains properties of a remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource can be used to manage remarketing lists that are owned by your advertisers. To see all remarketing lists that are visible to your advertisers, including those that are shared to your advertiser or account, use the TargetableRemarketingLists resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this remarketing list is active." + }, + "advertiserId": { + "type": "string", + "description": "Dimension value for the advertiser ID that owns this remarketing list. This is a required field.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "description": { + "type": "string", + "description": "Remarketing list description." + }, + "id": { + "type": "string", + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingList\".", + "default": "dfareporting#remarketingList" + }, + "lifeSpan": { + "type": "string", + "description": "Number of days that a user should remain in the remarketing list without an impression.", + "format": "int64" + }, + "listPopulationRule": { + "$ref": "ListPopulationRule", + "description": "Rule used to populate the remarketing list with users." + }, + "listSize": { + "type": "string", + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64" + }, + "listSource": { + "type": "string", + "description": "Product from which this remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the remarketing list. This is a required field. Must be no greater than 128 characters long." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + } + } + }, + "RemarketingListShare": { + "id": "RemarketingListShare", + "type": "object", + "description": "Contains properties of a remarketing list's sharing information. Sharing allows other accounts or advertisers to target to your remarketing lists. This resource can be used to manage remarketing list sharing to other accounts and advertisers.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListShare\".", + "default": "dfareporting#remarketingListShare" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID. This is a read-only, auto-generated field.", + "format": "int64" + }, + "sharedAccountIds": { + "type": "array", + "description": "Accounts that the remarketing list is shared with.", + "items": { + "type": "string", + "format": "int64" + } + }, + "sharedAdvertiserIds": { + "type": "array", + "description": "Advertisers that the remarketing list is shared with.", + "items": { + "type": "string", + "format": "int64" + } + } + } + }, + "RemarketingListsListResponse": { + "id": "RemarketingListsListResponse", + "type": "object", + "description": "Remarketing list response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#remarketingListsListResponse\".", + "default": "dfareporting#remarketingListsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "remarketingLists": { + "type": "array", + "description": "Remarketing list collection.", + "items": { + "$ref": "RemarketingList" + } + } + } + }, + "Report": { + "id": "Report", + "type": "object", + "description": "Represents a Report resource.", + "properties": { + "accountId": { + "type": "string", + "description": "The account ID to which this report belongs.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "criteria": { + "type": "object", + "description": "The report criteria for a report of type \"STANDARD\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range for which this report should be run." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of standard dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + } + } + }, + "crossDimensionReachCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"CROSS_DIMENSION_REACH\".", + "properties": { + "breakdown": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimension": { + "type": "string", + "description": "The dimension option.", + "enum": [ + "ADVERTISER", + "CAMPAIGN", + "SITE_BY_ADVERTISER", + "SITE_BY_CAMPAIGN" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.", + "items": { + "$ref": "DimensionValue" + } + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "overlapMetricNames": { + "type": "array", + "description": "The list of names of overlap metrics the report should include.", + "items": { + "type": "string" + } + }, + "pivoted": { + "type": "boolean", + "description": "Whether the report is pivoted or not. Defaults to true." + } + } + }, + "delivery": { + "type": "object", + "description": "The report's email delivery settings.", + "properties": { + "emailOwner": { + "type": "boolean", + "description": "Whether the report should be emailed to the report owner." + }, + "emailOwnerDeliveryType": { + "type": "string", + "description": "The type of delivery for the owner to receive, if enabled.", + "enum": [ + "ATTACHMENT", + "LINK" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "message": { + "type": "string", + "description": "The message to be sent with each email." + }, + "recipients": { + "type": "array", + "description": "The list of recipients to which to email the report.", + "items": { + "$ref": "Recipient" + } + } + } + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "fileName": { + "type": "string", + "description": "The filename used when generating report files for this report." + }, + "floodlightCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"FLOODLIGHT\".", + "properties": { + "customRichMediaEvents": { + "type": "array", + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "reportProperties": { + "type": "object", + "description": "The properties of the report.", + "properties": { + "includeAttributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no cookie, but do have an exposure path." + }, + "includeUnattributedCookieConversions": { + "type": "boolean", + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + }, + "includeUnattributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + } + } + } + } + }, + "format": { + "type": "string", + "description": "The output format of the report. If not specified, default format is \"CSV\". Note that the actual format in the completed report file might differ if for instance the report's size exceeds the format's capabilities. \"CSV\" will then be the fallback format.", + "enum": [ + "CSV", + "EXCEL" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "id": { + "type": "string", + "description": "The unique ID identifying this report resource.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#report.", + "default": "dfareporting#report" + }, + "lastModifiedTime": { + "type": "string", + "description": "The timestamp (in milliseconds since epoch) of when this report was last modified.", + "format": "uint64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "name": { + "type": "string", + "description": "The name of the report.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "ownerProfileId": { + "type": "string", + "description": "The user profile id of the owner of this report.", + "format": "int64", + "annotations": { + "required": [ + "dfareporting.reports.update" + ] + } + }, + "pathToConversionCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"PATH_TO_CONVERSION\".", + "properties": { + "activityFilters": { + "type": "array", + "description": "The list of 'dfa:activity' values to filter on.", + "items": { + "$ref": "DimensionValue" + } + }, + "conversionDimensions": { + "type": "array", + "description": "The list of conversion dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "customFloodlightVariables": { + "type": "array", + "description": "The list of custom floodlight variables the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "customRichMediaEvents": { + "type": "array", + "description": "The list of custom rich media events to include.", + "items": { + "$ref": "DimensionValue" + } + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "floodlightConfigId": { + "$ref": "DimensionValue", + "description": "The floodlight ID for which to show data in this report. All advertisers associated with that ID will automatically be added. The dimension of the value needs to be 'dfa:floodlightConfigId'." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "perInteractionDimensions": { + "type": "array", + "description": "The list of per interaction dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "reportProperties": { + "type": "object", + "description": "The properties of the report.", + "properties": { + "clicksLookbackWindow": { + "type": "integer", + "description": "DFA checks to see if a click interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32" + }, + "impressionsLookbackWindow": { + "type": "integer", + "description": "DFA checks to see if an impression interaction occurred within the specified period of time before a conversion. By default the value is pulled from Floodlight or you can manually enter a custom value. Valid values: 1-90.", + "format": "int32" + }, + "includeAttributedIPConversions": { + "type": "boolean", + "description": "Deprecated: has no effect." + }, + "includeUnattributedCookieConversions": { + "type": "boolean", + "description": "Include conversions of users with a DoubleClick cookie but without an exposure. That means the user did not click or see an ad from the advertiser within the Floodlight group, or that the interaction happened outside the lookback window." + }, + "includeUnattributedIPConversions": { + "type": "boolean", + "description": "Include conversions that have no associated cookies and no exposures. It’s therefore impossible to know how the user was exposed to your ads during the lookback window prior to a conversion." + }, + "maximumClickInteractions": { + "type": "integer", + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32" + }, + "maximumImpressionInteractions": { + "type": "integer", + "description": "The maximum number of click interactions to include in the report. Advertisers currently paying for E2C reports get up to 200 (100 clicks, 100 impressions). If another advertiser in your network is paying for E2C, you can have up to 5 total exposures per report.", + "format": "int32" + }, + "maximumInteractionGap": { + "type": "integer", + "description": "The maximum amount of time that can take place between interactions (clicks or impressions) by the same user. Valid values: 1-90.", + "format": "int32" + }, + "pivotOnInteractionPath": { + "type": "boolean", + "description": "Enable pivoting on interaction path." + } + } + } + } + }, + "reachCriteria": { + "type": "object", + "description": "The report criteria for a report of type \"REACH\".", + "properties": { + "activities": { + "$ref": "Activities", + "description": "Activity group." + }, + "customRichMediaEvents": { + "$ref": "CustomRichMediaEvents", + "description": "Custom Rich Media Events group." + }, + "dateRange": { + "$ref": "DateRange", + "description": "The date range this report should be run for." + }, + "dimensionFilters": { + "type": "array", + "description": "The list of filters on which dimensions are filtered.\nFilters for different dimensions are ANDed, filters for the same dimension are grouped together and ORed.", + "items": { + "$ref": "DimensionValue" + } + }, + "dimensions": { + "type": "array", + "description": "The list of dimensions the report should include.", + "items": { + "$ref": "SortedDimension" + } + }, + "enableAllDimensionCombinations": { + "type": "boolean", + "description": "Whether to enable all reach dimension combinations in the report. Defaults to false. If enabled, the date range of the report should be within the last three months." + }, + "metricNames": { + "type": "array", + "description": "The list of names of metrics the report should include.", + "items": { + "type": "string" + } + }, + "reachByFrequencyMetricNames": { + "type": "array", + "description": "The list of names of Reach By Frequency metrics the report should include.", + "items": { + "type": "string" + } + } + } + }, + "schedule": { + "type": "object", + "description": "The report's schedule. Can only be set if the report's 'dateRange' is a relative date range and the relative date range is not \"TODAY\".", + "properties": { + "active": { + "type": "boolean", + "description": "Whether the schedule is active or not. Must be set to either true or false.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "every": { + "type": "integer", + "description": "Defines every how many days, weeks or months the report should be run. Needs to be set when \"repeats\" is either \"DAILY\", \"WEEKLY\" or \"MONTHLY\".", + "format": "int32" + }, + "expirationDate": { + "type": "string", + "description": "The expiration date when the scheduled report stops running.", + "format": "date", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "repeats": { + "type": "string", + "description": "The interval for which the report is repeated. Note: \n- \"DAILY\" also requires field \"every\" to be set. \n- \"WEEKLY\" also requires fields \"every\" and \"repeatsOnWeekDays\" to be set. \n- \"MONTHLY\" also requires fields \"every\" and \"runsOnDayOfMonth\" to be set.", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + }, + "repeatsOnWeekDays": { + "type": "array", + "description": "List of week days \"WEEKLY\" on which scheduled reports should run.", + "items": { + "type": "string", + "enum": [ + "FRIDAY", + "MONDAY", + "SATURDAY", + "SUNDAY", + "THURSDAY", + "TUESDAY", + "WEDNESDAY" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "" + ] + } + }, + "runsOnDayOfMonth": { + "type": "string", + "description": "Enum to define for \"MONTHLY\" scheduled reports whether reports should be repeated on the same day of the month as \"startDate\" or the same day of the week of the month.\nExample: If 'startDate' is Monday, April 2nd 2012 (2012-04-02), \"DAY_OF_MONTH\" would run subsequent reports on the 2nd of every Month, and \"WEEK_OF_MONTH\" would run subsequent reports on the first Monday of the month.", + "enum": [ + "DAY_OF_MONTH", + "WEEK_OF_MONTH" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "startDate": { + "type": "string", + "description": "Start date of date range for which scheduled reports should be run.", + "format": "date", + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + } + } + }, + "subAccountId": { + "type": "string", + "description": "The subaccount ID to which this report belongs if applicable.", + "format": "int64" + }, + "type": { + "type": "string", + "description": "The type of the report.", + "enum": [ + "CROSS_DIMENSION_REACH", + "FLOODLIGHT", + "PATH_TO_CONVERSION", + "REACH", + "STANDARD" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "annotations": { + "required": [ + "dfareporting.reports.insert", + "dfareporting.reports.update" + ] + } + } + } + }, + "ReportCompatibleFields": { + "id": "ReportCompatibleFields", + "type": "object", + "description": "Represents fields that are compatible to be selected for a report of type \"STANDARD\".", + "properties": { + "dimensionFilters": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensionFilters\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "dimensions": { + "type": "array", + "description": "Dimensions which are compatible to be selected in the \"dimensions\" section of the report.", + "items": { + "$ref": "Dimension" + } + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#reportCompatibleFields.", + "default": "dfareporting#reportCompatibleFields" + }, + "metrics": { + "type": "array", + "description": "Metrics which are compatible to be selected in the \"metricNames\" section of the report.", + "items": { + "$ref": "Metric" + } + }, + "pivotedActivityMetrics": { + "type": "array", + "description": "Metrics which are compatible to be selected as activity metrics to pivot on in the \"activities\" section of the report.", + "items": { + "$ref": "Metric" + } + } + } + }, + "ReportList": { + "id": "ReportList", + "type": "object", + "description": "Represents the list of reports.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The reports returned in this response.", + "items": { + "$ref": "Report" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#reportList.", + "default": "dfareporting#reportList" + }, + "nextPageToken": { + "type": "string", + "description": "Continuation token used to page through reports. To retrieve the next page of results, set the next request's \"pageToken\" to the value of this field. The page token is only valid for a limited amount of time and should not be persisted." + } + } + }, + "ReportsConfiguration": { + "id": "ReportsConfiguration", + "type": "object", + "description": "Reporting Configuration", + "properties": { + "exposureToConversionEnabled": { + "type": "boolean", + "description": "Whether the exposure to conversion report is enabled. This report shows detailed pathway information on up to 10 of the most recent ad exposures seen by a user before converting." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Default lookback windows for new advertisers in this account." + }, + "reportGenerationTimeZoneId": { + "type": "string", + "description": "Report generation time zone ID of this account. This is a required field that can only be changed by a superuser.\nAcceptable values are:\n\n- \"1\" for \"America/New_York\" \n- \"2\" for \"Europe/London\" \n- \"3\" for \"Europe/Paris\" \n- \"4\" for \"Africa/Johannesburg\" \n- \"5\" for \"Asia/Jerusalem\" \n- \"6\" for \"Asia/Shanghai\" \n- \"7\" for \"Asia/Hong_Kong\" \n- \"8\" for \"Asia/Tokyo\" \n- \"9\" for \"Australia/Sydney\" \n- \"10\" for \"Asia/Dubai\" \n- \"11\" for \"America/Los_Angeles\" \n- \"12\" for \"Pacific/Auckland\" \n- \"13\" for \"America/Sao_Paulo\"", + "format": "int64" + } + } + }, + "RichMediaExitOverride": { + "id": "RichMediaExitOverride", + "type": "object", + "description": "Rich Media Exit Override.", + "properties": { + "clickThroughUrl": { + "$ref": "ClickThroughUrl", + "description": "Click-through URL of this rich media exit override. Applicable if the enabled field is set to true." + }, + "enabled": { + "type": "boolean", + "description": "Whether to use the clickThroughUrl. If false, the creative-level exit will be used." + }, + "exitId": { + "type": "string", + "description": "ID for the override to refer to a specific exit in the creative.", + "format": "int64" + } + } + }, + "Rule": { + "id": "Rule", + "type": "object", + "description": "A rule associates an asset with a targeting template for asset-level targeting. Applicable to INSTREAM_VIDEO creatives.", + "properties": { + "assetId": { + "type": "string", + "description": "A creativeAssets[].id. This should refer to one of the parent assets in this creative. This is a required field.", + "format": "int64" + }, + "name": { + "type": "string", + "description": "A user-friendly name for this rule. This is a required field." + }, + "targetingTemplateId": { + "type": "string", + "description": "A targeting template ID. The targeting from the targeting template will be used to determine whether this asset should be served. This is a required field.", + "format": "int64" + } + } + }, + "Site": { + "id": "Site", + "type": "object", + "description": "Contains properties of a site.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this site. This is a read-only field that can be left blank.", + "format": "int64" + }, + "approved": { + "type": "boolean", + "description": "Whether this site is approved." + }, + "directorySiteId": { + "type": "string", + "description": "Directory site associated with this site. This is a required field that is read-only after insertion.", + "format": "int64" + }, + "directorySiteIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the directory site. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this site. This is a read-only, auto-generated field.", + "format": "int64" + }, + "idDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of this site. This is a read-only, auto-generated field." + }, + "keyName": { + "type": "string", + "description": "Key name of this site. This is a read-only, auto-generated field." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#site\".", + "default": "dfareporting#site" + }, + "name": { + "type": "string", + "description": "Name of this site.This is a required field. Must be less than 128 characters long. If this site is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this site is a top-level site, and the name must be unique among top-level sites of the same account." + }, + "siteContacts": { + "type": "array", + "description": "Site contacts.", + "items": { + "$ref": "SiteContact" + } + }, + "siteSettings": { + "$ref": "SiteSettings", + "description": "Site-wide settings." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this site. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "SiteContact": { + "id": "SiteContact", + "type": "object", + "description": "Site Contact", + "properties": { + "address": { + "type": "string", + "description": "Address of this site contact." + }, + "contactType": { + "type": "string", + "description": "Site contact type.", + "enum": [ + "SALES_PERSON", + "TRAFFICKER" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "email": { + "type": "string", + "description": "Email address of this site contact. This is a required field." + }, + "firstName": { + "type": "string", + "description": "First name of this site contact." + }, + "id": { + "type": "string", + "description": "ID of this site contact. This is a read-only, auto-generated field.", + "format": "int64" + }, + "lastName": { + "type": "string", + "description": "Last name of this site contact." + }, + "phone": { + "type": "string", + "description": "Primary phone number of this site contact." + }, + "title": { + "type": "string", + "description": "Title or designation of this site contact." + } + } + }, + "SiteSettings": { + "id": "SiteSettings", + "type": "object", + "description": "Site Settings", + "properties": { + "activeViewOptOut": { + "type": "boolean", + "description": "Whether active view creatives are disabled for this site." + }, + "creativeSettings": { + "$ref": "CreativeSettings", + "description": "Site-wide creative settings." + }, + "disableBrandSafeAds": { + "type": "boolean", + "description": "Whether brand safe ads are disabled for this site." + }, + "disableNewCookie": { + "type": "boolean", + "description": "Whether new cookies are disabled for this site." + }, + "lookbackConfiguration": { + "$ref": "LookbackConfiguration", + "description": "Lookback window settings for this site." + }, + "tagSetting": { + "$ref": "TagSetting", + "description": "Configuration settings for dynamic and image floodlight tags." + }, + "videoActiveViewOptOut": { + "type": "boolean", + "description": "Whether Verification and ActiveView are disabled for in-stream video creatives on this site. The same setting videoActiveViewOptOut exists on the directory site level -- the opt out occurs if either of these settings are true. These settings are distinct from DirectorySites.settings.activeViewOptOut or Sites.siteSettings.activeViewOptOut which only apply to display ads. However, Accounts.activeViewOptOut opts out both video traffic, as well as display ads, from Verification and ActiveView." + } + } + }, + "SitesListResponse": { + "id": "SitesListResponse", + "type": "object", + "description": "Site List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sitesListResponse\".", + "default": "dfareporting#sitesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "sites": { + "type": "array", + "description": "Site collection.", + "items": { + "$ref": "Site" + } + } + } + }, + "Size": { + "id": "Size", + "type": "object", + "description": "Represents the dimensions of ads, placements, creatives, or creative assets.", + "properties": { + "height": { + "type": "integer", + "description": "Height of this size.", + "format": "int32" + }, + "iab": { + "type": "boolean", + "description": "IAB standard size. This is a read-only, auto-generated field." + }, + "id": { + "type": "string", + "description": "ID of this size. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#size\".", + "default": "dfareporting#size" + }, + "width": { + "type": "integer", + "description": "Width of this size.", + "format": "int32" + } + } + }, + "SizesListResponse": { + "id": "SizesListResponse", + "type": "object", + "description": "Size List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#sizesListResponse\".", + "default": "dfareporting#sizesListResponse" + }, + "sizes": { + "type": "array", + "description": "Size collection.", + "items": { + "$ref": "Size" + } + } + } + }, + "SortedDimension": { + "id": "SortedDimension", + "type": "object", + "description": "Represents a sorted dimension.", + "properties": { + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#sortedDimension.", + "default": "dfareporting#sortedDimension" + }, + "name": { + "type": "string", + "description": "The name of the dimension." + }, + "sortOrder": { + "type": "string", + "description": "An optional sort order for the dimension column.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "Subaccount": { + "id": "Subaccount", + "type": "object", + "description": "Contains properties of a DCM subaccount.", + "properties": { + "accountId": { + "type": "string", + "description": "ID of the account that contains this subaccount. This is a read-only field that can be left blank.", + "format": "int64" + }, + "availablePermissionIds": { + "type": "array", + "description": "IDs of the available user role permissions for this subaccount.", + "items": { + "type": "string", + "format": "int64" + } + }, + "id": { + "type": "string", + "description": "ID of this subaccount. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccount\".", + "default": "dfareporting#subaccount" + }, + "name": { + "type": "string", + "description": "Name of this subaccount. This is a required field. Must be less than 128 characters long and be unique among subaccounts of the same account." + } + } + }, + "SubaccountsListResponse": { + "id": "SubaccountsListResponse", + "type": "object", + "description": "Subaccount List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#subaccountsListResponse\".", + "default": "dfareporting#subaccountsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "subaccounts": { + "type": "array", + "description": "Subaccount collection.", + "items": { + "$ref": "Subaccount" + } + } + } + }, + "TagData": { + "id": "TagData", + "type": "object", + "description": "Placement Tag Data", + "properties": { + "adId": { + "type": "string", + "description": "Ad associated with this placement tag.", + "format": "int64" + }, + "clickTag": { + "type": "string", + "description": "Tag string to record a click." + }, + "creativeId": { + "type": "string", + "description": "Creative associated with this placement tag.", + "format": "int64" + }, + "format": { + "type": "string", + "description": "TagData tag format of this tag.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "impressionTag": { + "type": "string", + "description": "Tag string for serving an ad." + } + } + }, + "TagSetting": { + "id": "TagSetting", + "type": "object", + "description": "Tag Settings", + "properties": { + "additionalKeyValues": { + "type": "string", + "description": "Additional key-values to be included in tags. Each key-value pair must be of the form key=value, and pairs must be separated by a semicolon (;). Keys and values must not contain commas. For example, id=2;color=red is a valid value for this field." + }, + "includeClickThroughUrls": { + "type": "boolean", + "description": "Whether static landing page URLs should be included in the tags. This setting applies only to placements." + }, + "includeClickTracking": { + "type": "boolean", + "description": "Whether click-tracking string should be included in the tags." + }, + "keywordOption": { + "type": "string", + "description": "Option specifying how keywords are embedded in ad tags. This setting can be used to specify whether keyword placeholders are inserted in placement tags for this site. Publishers can then add keywords to those placeholders.", + "enum": [ + "GENERATE_SEPARATE_TAG_FOR_EACH_KEYWORD", + "IGNORE", + "PLACEHOLDER_WITH_LIST_OF_KEYWORDS" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "TagSettings": { + "id": "TagSettings", + "type": "object", + "description": "Dynamic and Image Tag Settings.", + "properties": { + "dynamicTagEnabled": { + "type": "boolean", + "description": "Whether dynamic floodlight tags are enabled." + }, + "imageTagEnabled": { + "type": "boolean", + "description": "Whether image tags are enabled." + } + } + }, + "TargetWindow": { + "id": "TargetWindow", + "type": "object", + "description": "Target Window.", + "properties": { + "customHtml": { + "type": "string", + "description": "User-entered value." + }, + "targetWindowOption": { + "type": "string", + "description": "Type of browser window for which the backup image of the flash creative can be displayed.", + "enum": [ + "CURRENT_WINDOW", + "CUSTOM", + "NEW_WINDOW" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "TargetableRemarketingList": { + "id": "TargetableRemarketingList", + "type": "object", + "description": "Contains properties of a targetable remarketing list. Remarketing enables you to create lists of users who have performed specific actions on a site, then target ads to members of those lists. This resource is a read-only view of a remarketing list to be used to faciliate targeting ads to specific lists. Remarketing lists that are owned by your advertisers and those that are shared to your advertisers or account are accessible via this resource. To manage remarketing lists that are owned by your advertisers, use the RemarketingLists resource.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + }, + "active": { + "type": "boolean", + "description": "Whether this targetable remarketing list is active." + }, + "advertiserId": { + "type": "string", + "description": "Dimension value for the advertiser ID that owns this targetable remarketing list.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser." + }, + "description": { + "type": "string", + "description": "Targetable remarketing list description." + }, + "id": { + "type": "string", + "description": "Targetable remarketing list ID.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingList\".", + "default": "dfareporting#targetableRemarketingList" + }, + "lifeSpan": { + "type": "string", + "description": "Number of days that a user should remain in the targetable remarketing list without an impression.", + "format": "int64" + }, + "listSize": { + "type": "string", + "description": "Number of users currently in the list. This is a read-only field.", + "format": "int64" + }, + "listSource": { + "type": "string", + "description": "Product from which this targetable remarketing list was originated.", + "enum": [ + "REMARKETING_LIST_SOURCE_ADX", + "REMARKETING_LIST_SOURCE_DBM", + "REMARKETING_LIST_SOURCE_DFA", + "REMARKETING_LIST_SOURCE_DFP", + "REMARKETING_LIST_SOURCE_DMP", + "REMARKETING_LIST_SOURCE_GA", + "REMARKETING_LIST_SOURCE_GPLUS", + "REMARKETING_LIST_SOURCE_OTHER", + "REMARKETING_LIST_SOURCE_PLAY_STORE", + "REMARKETING_LIST_SOURCE_XFP", + "REMARKETING_LIST_SOURCE_YOUTUBE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "name": { + "type": "string", + "description": "Name of the targetable remarketing list. Is no greater than 128 characters long." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this remarketing list. This is a read-only, auto-generated field that is only returned in GET requests.", + "format": "int64" + } + } + }, + "TargetableRemarketingListsListResponse": { + "id": "TargetableRemarketingListsListResponse", + "type": "object", + "description": "Targetable remarketing list response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetableRemarketingListsListResponse\".", + "default": "dfareporting#targetableRemarketingListsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "targetableRemarketingLists": { + "type": "array", + "description": "Targetable remarketing list collection.", + "items": { + "$ref": "TargetableRemarketingList" + } + } + } + }, + "TargetingTemplate": { + "id": "TargetingTemplate", + "type": "object", + "description": "Contains properties of a targeting template. A targeting template encapsulates targeting information which can be reused across multiple ads.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64" + }, + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this targeting template. This is a required field on insert and is read-only after insert.", + "format": "int64" + }, + "advertiserIdDimensionValue": { + "$ref": "DimensionValue", + "description": "Dimension value for the ID of the advertiser. This is a read-only, auto-generated field." + }, + "dayPartTargeting": { + "$ref": "DayPartTargeting", + "description": "Time and day targeting criteria." + }, + "geoTargeting": { + "$ref": "GeoTargeting", + "description": "Geographical targeting criteria." + }, + "id": { + "type": "string", + "description": "ID of this targeting template. This is a read-only, auto-generated field.", + "format": "int64" + }, + "keyValueTargetingExpression": { + "$ref": "KeyValueTargetingExpression", + "description": "Key-value targeting criteria." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplate\".", + "default": "dfareporting#targetingTemplate" + }, + "languageTargeting": { + "$ref": "LanguageTargeting", + "description": "Language targeting criteria." + }, + "listTargetingExpression": { + "$ref": "ListTargetingExpression", + "description": "Remarketing list targeting criteria." + }, + "name": { + "type": "string", + "description": "Name of this targeting template. This field is required. It must be less than 256 characters long and unique within an advertiser." + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this targeting template. This field, if left unset, will be auto-generated on insert and is read-only after insert.", + "format": "int64" + }, + "technologyTargeting": { + "$ref": "TechnologyTargeting", + "description": "Technology platform targeting criteria." + } + } + }, + "TargetingTemplatesListResponse": { + "id": "TargetingTemplatesListResponse", + "type": "object", + "description": "Targeting Template List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#targetingTemplatesListResponse\".", + "default": "dfareporting#targetingTemplatesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "targetingTemplates": { + "type": "array", + "description": "Targeting template collection.", + "items": { + "$ref": "TargetingTemplate" + } + } + } + }, + "TechnologyTargeting": { + "id": "TechnologyTargeting", + "type": "object", + "description": "Technology Targeting.", + "properties": { + "browsers": { + "type": "array", + "description": "Browsers that this ad targets. For each browser either set browserVersionId or dartId along with the version numbers. If both are specified, only browserVersionId will be used. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "Browser" + } + }, + "connectionTypes": { + "type": "array", + "description": "Connection types that this ad targets. For each connection type only id is required. The other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "ConnectionType" + } + }, + "mobileCarriers": { + "type": "array", + "description": "Mobile carriers that this ad targets. For each mobile carrier only id is required, and the other fields are populated automatically when the ad is inserted or updated. If targeting a mobile carrier, do not set targeting for any zip codes.", + "items": { + "$ref": "MobileCarrier" + } + }, + "operatingSystemVersions": { + "type": "array", + "description": "Operating system versions that this ad targets. To target all versions, use operatingSystems. For each operating system version, only id is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system version, do not set targeting for the corresponding operating system in operatingSystems.", + "items": { + "$ref": "OperatingSystemVersion" + } + }, + "operatingSystems": { + "type": "array", + "description": "Operating systems that this ad targets. To target specific versions, use operatingSystemVersions. For each operating system only dartId is required. The other fields are populated automatically when the ad is inserted or updated. If targeting an operating system, do not set targeting for operating system versions for the same operating system.", + "items": { + "$ref": "OperatingSystem" + } + }, + "platformTypes": { + "type": "array", + "description": "Platform types that this ad targets. For example, desktop, mobile, or tablet. For each platform type, only id is required, and the other fields are populated automatically when the ad is inserted or updated.", + "items": { + "$ref": "PlatformType" + } + } + } + }, + "ThirdPartyAuthenticationToken": { + "id": "ThirdPartyAuthenticationToken", + "type": "object", + "description": "Third Party Authentication Token", + "properties": { + "name": { + "type": "string", + "description": "Name of the third-party authentication token." + }, + "value": { + "type": "string", + "description": "Value of the third-party authentication token. This is a read-only, auto-generated field." + } + } + }, + "ThirdPartyTrackingUrl": { + "id": "ThirdPartyTrackingUrl", + "type": "object", + "description": "Third-party Tracking URL.", + "properties": { + "thirdPartyUrlType": { + "type": "string", + "description": "Third-party URL type for in-stream video creatives.", + "enum": [ + "CLICK_TRACKING", + "IMPRESSION", + "RICH_MEDIA_BACKUP_IMPRESSION", + "RICH_MEDIA_IMPRESSION", + "RICH_MEDIA_RM_IMPRESSION", + "SURVEY", + "VIDEO_COMPLETE", + "VIDEO_CUSTOM", + "VIDEO_FIRST_QUARTILE", + "VIDEO_FULLSCREEN", + "VIDEO_MIDPOINT", + "VIDEO_MUTE", + "VIDEO_PAUSE", + "VIDEO_PROGRESS", + "VIDEO_REWIND", + "VIDEO_SKIP", + "VIDEO_START", + "VIDEO_STOP", + "VIDEO_THIRD_QUARTILE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "url": { + "type": "string", + "description": "URL for the specified third-party URL type." + } + } + }, + "UserDefinedVariableConfiguration": { + "id": "UserDefinedVariableConfiguration", + "type": "object", + "description": "User Defined Variable configuration.", + "properties": { + "dataType": { + "type": "string", + "description": "Data type for the variable. This is a required field.", + "enum": [ + "NUMBER", + "STRING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "reportName": { + "type": "string", + "description": "User-friendly name for the variable which will appear in reports. This is a required field, must be less than 64 characters long, and cannot contain the following characters: \"\"\u003c\u003e\"." + }, + "variableType": { + "type": "string", + "description": "Variable name in the tag. This is a required field.", + "enum": [ + "U1", + "U10", + "U100", + "U11", + "U12", + "U13", + "U14", + "U15", + "U16", + "U17", + "U18", + "U19", + "U2", + "U20", + "U21", + "U22", + "U23", + "U24", + "U25", + "U26", + "U27", + "U28", + "U29", + "U3", + "U30", + "U31", + "U32", + "U33", + "U34", + "U35", + "U36", + "U37", + "U38", + "U39", + "U4", + "U40", + "U41", + "U42", + "U43", + "U44", + "U45", + "U46", + "U47", + "U48", + "U49", + "U5", + "U50", + "U51", + "U52", + "U53", + "U54", + "U55", + "U56", + "U57", + "U58", + "U59", + "U6", + "U60", + "U61", + "U62", + "U63", + "U64", + "U65", + "U66", + "U67", + "U68", + "U69", + "U7", + "U70", + "U71", + "U72", + "U73", + "U74", + "U75", + "U76", + "U77", + "U78", + "U79", + "U8", + "U80", + "U81", + "U82", + "U83", + "U84", + "U85", + "U86", + "U87", + "U88", + "U89", + "U9", + "U90", + "U91", + "U92", + "U93", + "U94", + "U95", + "U96", + "U97", + "U98", + "U99" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + } + }, + "UserProfile": { + "id": "UserProfile", + "type": "object", + "description": "Represents a UserProfile resource.", + "properties": { + "accountId": { + "type": "string", + "description": "The account ID to which this profile belongs.", + "format": "int64" + }, + "accountName": { + "type": "string", + "description": "The account name this profile belongs to." + }, + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "kind": { + "type": "string", + "description": "The kind of resource this is, in this case dfareporting#userProfile.", + "default": "dfareporting#userProfile" + }, + "profileId": { + "type": "string", + "description": "The unique ID of the user profile.", + "format": "int64" + }, + "subAccountId": { + "type": "string", + "description": "The sub account ID this profile belongs to if applicable.", + "format": "int64" + }, + "subAccountName": { + "type": "string", + "description": "The sub account name this profile belongs to if applicable." + }, + "userName": { + "type": "string", + "description": "The user name." + } + } + }, + "UserProfileList": { + "id": "UserProfileList", + "type": "object", + "description": "Represents the list of user profiles.", + "properties": { + "etag": { + "type": "string", + "description": "The eTag of this response for caching purposes." + }, + "items": { + "type": "array", + "description": "The user profiles returned in this response.", + "items": { + "$ref": "UserProfile" + } + }, + "kind": { + "type": "string", + "description": "The kind of list this is, in this case dfareporting#userProfileList.", + "default": "dfareporting#userProfileList" + } + } + }, + "UserRole": { + "id": "UserRole", + "type": "object", + "description": "Contains properties of auser role, which is used to manage user access.", + "properties": { + "accountId": { + "type": "string", + "description": "Account ID of this user role. This is a read-only field that can be left blank.", + "format": "int64" + }, + "defaultUserRole": { + "type": "boolean", + "description": "Whether this is a default user role. Default user roles are created by the system for the account/subaccount and cannot be modified or deleted. Each default user role comes with a basic set of preassigned permissions." + }, + "id": { + "type": "string", + "description": "ID of this user role. This is a read-only, auto-generated field.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRole\".", + "default": "dfareporting#userRole" + }, + "name": { + "type": "string", + "description": "Name of this user role. This is a required field. Must be less than 256 characters long. If this user role is under a subaccount, the name must be unique among sites of the same subaccount. Otherwise, this user role is a top-level user role, and the name must be unique among top-level user roles of the same account." + }, + "parentUserRoleId": { + "type": "string", + "description": "ID of the user role that this user role is based on or copied from. This is a required field.", + "format": "int64" + }, + "permissions": { + "type": "array", + "description": "List of permissions associated with this user role.", + "items": { + "$ref": "UserRolePermission" + } + }, + "subaccountId": { + "type": "string", + "description": "Subaccount ID of this user role. This is a read-only field that can be left blank.", + "format": "int64" + } + } + }, + "UserRolePermission": { + "id": "UserRolePermission", + "type": "object", + "description": "Contains properties of a user role permission.", + "properties": { + "availability": { + "type": "string", + "description": "Levels of availability for a user role permission.", + "enum": [ + "ACCOUNT_ALWAYS", + "ACCOUNT_BY_DEFAULT", + "NOT_AVAILABLE_BY_DEFAULT", + "SUBACCOUNT_AND_ACCOUNT_ALWAYS", + "SUBACCOUNT_AND_ACCOUNT_BY_DEFAULT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "id": { + "type": "string", + "description": "ID of this user role permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermission\".", + "default": "dfareporting#userRolePermission" + }, + "name": { + "type": "string", + "description": "Name of this user role permission." + }, + "permissionGroupId": { + "type": "string", + "description": "ID of the permission group that this user role permission belongs to.", + "format": "int64" + } + } + }, + "UserRolePermissionGroup": { + "id": "UserRolePermissionGroup", + "type": "object", + "description": "Represents a grouping of related user role permissions.", + "properties": { + "id": { + "type": "string", + "description": "ID of this user role permission.", + "format": "int64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroup\".", + "default": "dfareporting#userRolePermissionGroup" + }, + "name": { + "type": "string", + "description": "Name of this user role permission group." + } + } + }, + "UserRolePermissionGroupsListResponse": { + "id": "UserRolePermissionGroupsListResponse", + "type": "object", + "description": "User Role Permission Group List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionGroupsListResponse\".", + "default": "dfareporting#userRolePermissionGroupsListResponse" + }, + "userRolePermissionGroups": { + "type": "array", + "description": "User role permission group collection.", + "items": { + "$ref": "UserRolePermissionGroup" + } + } + } + }, + "UserRolePermissionsListResponse": { + "id": "UserRolePermissionsListResponse", + "type": "object", + "description": "User Role Permission List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolePermissionsListResponse\".", + "default": "dfareporting#userRolePermissionsListResponse" + }, + "userRolePermissions": { + "type": "array", + "description": "User role permission collection.", + "items": { + "$ref": "UserRolePermission" + } + } + } + }, + "UserRolesListResponse": { + "id": "UserRolesListResponse", + "type": "object", + "description": "User Role List Response", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dfareporting#userRolesListResponse\".", + "default": "dfareporting#userRolesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "Pagination token to be used for the next list operation." + }, + "userRoles": { + "type": "array", + "description": "User role collection.", + "items": { + "$ref": "UserRole" + } + } + } + } + }, + "resources": { + "accountActiveAdSummaries": { + "methods": { + "get": { + "id": "dfareporting.accountActiveAdSummaries.get", + "path": "userprofiles/{profileId}/accountActiveAdSummaries/{summaryAccountId}", + "httpMethod": "GET", + "description": "Gets the account's active ad summary by account ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "summaryAccountId": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "summaryAccountId" + ], + "response": { + "$ref": "AccountActiveAdSummary" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountPermissionGroups": { + "methods": { + "get": { + "id": "dfareporting.accountPermissionGroups.get", + "path": "userprofiles/{profileId}/accountPermissionGroups/{id}", + "httpMethod": "GET", + "description": "Gets one account permission group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account permission group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountPermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountPermissionGroups.list", + "path": "userprofiles/{profileId}/accountPermissionGroups", + "httpMethod": "GET", + "description": "Retrieves the list of account permission groups.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountPermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountPermissions": { + "methods": { + "get": { + "id": "dfareporting.accountPermissions.get", + "path": "userprofiles/{profileId}/accountPermissions/{id}", + "httpMethod": "GET", + "description": "Gets one account permission by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account permission ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountPermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountPermissions.list", + "path": "userprofiles/{profileId}/accountPermissions", + "httpMethod": "GET", + "description": "Retrieves the list of account permissions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountPermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accountUserProfiles": { + "methods": { + "get": { + "id": "dfareporting.accountUserProfiles.get", + "path": "userprofiles/{profileId}/accountUserProfiles/{id}", + "httpMethod": "GET", + "description": "Gets one account user profile by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.accountUserProfiles.insert", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "POST", + "description": "Inserts a new account user profile.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accountUserProfiles.list", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "GET", + "description": "Retrieves a list of account user profiles, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active user profiles.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only user profiles with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"user profile*2015\" will return objects with names like \"user profile June 2015\", \"user profile April 2015\", or simply \"user profile 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"user profile\" will match objects with name \"my user profile\", \"user profile 2015\", or simply \"user profile\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only user profiles with the specified subaccount ID.", + "format": "int64", + "location": "query" + }, + "userRoleId": { + "type": "string", + "description": "Select only user profiles with the specified user role ID.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountUserProfilesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.accountUserProfiles.patch", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "PATCH", + "description": "Updates an existing account user profile. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "User profile ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.accountUserProfiles.update", + "path": "userprofiles/{profileId}/accountUserProfiles", + "httpMethod": "PUT", + "description": "Updates an existing account user profile.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AccountUserProfile" + }, + "response": { + "$ref": "AccountUserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "accounts": { + "methods": { + "get": { + "id": "dfareporting.accounts.get", + "path": "userprofiles/{profileId}/accounts/{id}", + "httpMethod": "GET", + "description": "Gets one account by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.accounts.list", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "GET", + "description": "Retrieves the list of accounts, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active accounts. Don't set this field to select both active and non-active accounts.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only accounts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"account*2015\" will return objects with names like \"account June 2015\", \"account April 2015\", or simply \"account 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"account\" will match objects with name \"my account\", \"account 2015\", or simply \"account\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.accounts.patch", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "PATCH", + "description": "Updates an existing account. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Account ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.accounts.update", + "path": "userprofiles/{profileId}/accounts", + "httpMethod": "PUT", + "description": "Updates an existing account.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Account" + }, + "response": { + "$ref": "Account" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "ads": { + "methods": { + "get": { + "id": "dfareporting.ads.get", + "path": "userprofiles/{profileId}/ads/{id}", + "httpMethod": "GET", + "description": "Gets one ad by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Ad ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.ads.insert", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "POST", + "description": "Inserts a new ad.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.ads.list", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "GET", + "description": "Retrieves a list of ads, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active ads.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only ads with this advertiser ID.", + "format": "int64", + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived ads.", + "location": "query" + }, + "audienceSegmentIds": { + "type": "string", + "description": "Select only ads with these audience segment IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only ads with these campaign IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "compatibility": { + "type": "string", + "description": "Select default ads with the specified compatibility. Applicable when type is AD_SERVING_DEFAULT_AD. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads, respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering an in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "creativeIds": { + "type": "string", + "description": "Select only ads with these creative IDs assigned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeOptimizationConfigurationIds": { + "type": "string", + "description": "Select only ads with these creative optimization configuration IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeType": { + "type": "string", + "description": "Select only ads with the specified creativeType.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "dynamicClickTracker": { + "type": "boolean", + "description": "Select only dynamic click trackers. Applicable when type is AD_SERVING_CLICK_TRACKER. If true, select dynamic click trackers. If false, select static click trackers. Leave unset to select both.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only ads with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "landingPageIds": { + "type": "string", + "description": "Select only ads with these landing page IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "overriddenEventTagId": { + "type": "string", + "description": "Select only ads with this event tag override ID.", + "format": "int64", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "placementIds": { + "type": "string", + "description": "Select only ads with these placement IDs assigned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListIds": { + "type": "string", + "description": "Select only ads whose list targeting expression use these remarketing list IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"ad*2015\" will return objects with names like \"ad June 2015\", \"ad April 2015\", or simply \"ad 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"ad\" will match objects with name \"my ad\", \"ad 2015\", or simply \"ad\".", + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only ads with these size IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sslCompliant": { + "type": "boolean", + "description": "Select only ads that are SSL-compliant.", + "location": "query" + }, + "sslRequired": { + "type": "boolean", + "description": "Select only ads that require SSL.", + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only ads with these types.", + "enum": [ + "AD_SERVING_CLICK_TRACKER", + "AD_SERVING_DEFAULT_AD", + "AD_SERVING_STANDARD_AD", + "AD_SERVING_TRACKING" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.ads.patch", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "PATCH", + "description": "Updates an existing ad. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Ad ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.ads.update", + "path": "userprofiles/{profileId}/ads", + "httpMethod": "PUT", + "description": "Updates an existing ad.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Ad" + }, + "response": { + "$ref": "Ad" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "advertiserGroups": { + "methods": { + "delete": { + "id": "dfareporting.advertiserGroups.delete", + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing advertiser group.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.advertiserGroups.get", + "path": "userprofiles/{profileId}/advertiserGroups/{id}", + "httpMethod": "GET", + "description": "Gets one advertiser group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.advertiserGroups.insert", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "POST", + "description": "Inserts a new advertiser group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.advertiserGroups.list", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "GET", + "description": "Retrieves a list of advertiser groups, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only advertiser groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser group June 2015\", \"advertiser group April 2015\", or simply \"advertiser group 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertisergroup\" will match objects with name \"my advertisergroup\", \"advertisergroup 2015\", or simply \"advertisergroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdvertiserGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.advertiserGroups.patch", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "PATCH", + "description": "Updates an existing advertiser group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.advertiserGroups.update", + "path": "userprofiles/{profileId}/advertiserGroups", + "httpMethod": "PUT", + "description": "Updates an existing advertiser group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "AdvertiserGroup" + }, + "response": { + "$ref": "AdvertiserGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "advertisers": { + "methods": { + "get": { + "id": "dfareporting.advertisers.get", + "path": "userprofiles/{profileId}/advertisers/{id}", + "httpMethod": "GET", + "description": "Gets one advertiser by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.advertisers.insert", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "POST", + "description": "Inserts a new advertiser.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.advertisers.list", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "GET", + "description": "Retrieves a list of advertisers, possibly filtered.", + "parameters": { + "advertiserGroupIds": { + "type": "string", + "description": "Select only advertisers with these advertiser group IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "floodlightConfigurationIds": { + "type": "string", + "description": "Select only advertisers with these floodlight configuration IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only advertisers with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "includeAdvertisersWithoutGroupsOnly": { + "type": "boolean", + "description": "Select only advertisers which do not belong to any advertiser group.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "onlyParent": { + "type": "boolean", + "description": "Select only advertisers which use another advertiser's floodlight configuration.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"advertiser*2015\" will return objects with names like \"advertiser June 2015\", \"advertiser April 2015\", or simply \"advertiser 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"advertiser\" will match objects with name \"my advertiser\", \"advertiser 2015\", or simply \"advertiser\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "status": { + "type": "string", + "description": "Select only advertisers with the specified status.", + "enum": [ + "APPROVED", + "ON_HOLD" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only advertisers with these subaccount IDs.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "AdvertisersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.advertisers.patch", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "PATCH", + "description": "Updates an existing advertiser. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Advertiser ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.advertisers.update", + "path": "userprofiles/{profileId}/advertisers", + "httpMethod": "PUT", + "description": "Updates an existing advertiser.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Advertiser" + }, + "response": { + "$ref": "Advertiser" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "browsers": { + "methods": { + "list": { + "id": "dfareporting.browsers.list", + "path": "userprofiles/{profileId}/browsers", + "httpMethod": "GET", + "description": "Retrieves a list of browsers.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "BrowsersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "campaignCreativeAssociations": { + "methods": { + "insert": { + "id": "dfareporting.campaignCreativeAssociations.insert", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "httpMethod": "POST", + "description": "Associates a creative with the specified campaign. This method creates a default ad with dimensions matching the creative in the campaign if such a default ad does not exist already.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Campaign ID in this association.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "CampaignCreativeAssociation" + }, + "response": { + "$ref": "CampaignCreativeAssociation" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.campaignCreativeAssociations.list", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/campaignCreativeAssociations", + "httpMethod": "GET", + "description": "Retrieves the list of creative IDs associated with the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Campaign ID in this association.", + "required": true, + "format": "int64", + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "response": { + "$ref": "CampaignCreativeAssociationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "campaigns": { + "methods": { + "get": { + "id": "dfareporting.campaigns.get", + "path": "userprofiles/{profileId}/campaigns/{id}", + "httpMethod": "GET", + "description": "Gets one campaign by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.campaigns.insert", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "POST", + "description": "Inserts a new campaign.", + "parameters": { + "defaultLandingPageName": { + "type": "string", + "description": "Default landing page name for this new campaign. Must be less than 256 characters long.", + "required": true, + "location": "query" + }, + "defaultLandingPageUrl": { + "type": "string", + "description": "Default landing page URL for this new campaign.", + "required": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "defaultLandingPageName", + "defaultLandingPageUrl" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.campaigns.list", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "GET", + "description": "Retrieves a list of campaigns, possibly filtered.", + "parameters": { + "advertiserGroupIds": { + "type": "string", + "description": "Select only campaigns whose advertisers belong to these advertiser groups.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "advertiserIds": { + "type": "string", + "description": "Select only campaigns that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived campaigns. Don't set this field to select both archived and non-archived campaigns.", + "location": "query" + }, + "atLeastOneOptimizationActivity": { + "type": "boolean", + "description": "Select only campaigns that have at least one optimization activity.", + "location": "query" + }, + "excludedIds": { + "type": "string", + "description": "Exclude campaigns with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only campaigns with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "overriddenEventTagId": { + "type": "string", + "description": "Select only campaigns that have overridden this event tag ID.", + "format": "int64", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for campaigns by name or ID. Wildcards (*) are allowed. For example, \"campaign*2015\" will return campaigns with names like \"campaign June 2015\", \"campaign April 2015\", or simply \"campaign 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"campaign\" will match campaigns with name \"my campaign\", \"campaign 2015\", or simply \"campaign\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only campaigns that belong to this subaccount.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CampaignsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.campaigns.patch", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "PATCH", + "description": "Updates an existing campaign. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Campaign ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.campaigns.update", + "path": "userprofiles/{profileId}/campaigns", + "httpMethod": "PUT", + "description": "Updates an existing campaign.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Campaign" + }, + "response": { + "$ref": "Campaign" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "changeLogs": { + "methods": { + "get": { + "id": "dfareporting.changeLogs.get", + "path": "userprofiles/{profileId}/changeLogs/{id}", + "httpMethod": "GET", + "description": "Gets one change log by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Change log ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ChangeLog" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.changeLogs.list", + "path": "userprofiles/{profileId}/changeLogs", + "httpMethod": "GET", + "description": "Retrieves a list of change logs.", + "parameters": { + "action": { + "type": "string", + "description": "Select only change logs with the specified action.", + "enum": [ + "ACTION_ADD", + "ACTION_ASSIGN", + "ACTION_ASSOCIATE", + "ACTION_CREATE", + "ACTION_DELETE", + "ACTION_DISABLE", + "ACTION_EMAIL_TAGS", + "ACTION_ENABLE", + "ACTION_LINK", + "ACTION_MARK_AS_DEFAULT", + "ACTION_PUSH", + "ACTION_REMOVE", + "ACTION_SEND", + "ACTION_SHARE", + "ACTION_UNASSIGN", + "ACTION_UNLINK", + "ACTION_UPDATE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only change logs with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxChangeTime": { + "type": "string", + "description": "Select only change logs whose change time is before the specified maxChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "minChangeTime": { + "type": "string", + "description": "Select only change logs whose change time is before the specified minChangeTime.The time should be formatted as an RFC3339 date/time string. For example, for 10:54 PM on July 18th, 2015, in the America/New York time zone, the format is \"2015-07-18T22:54:00-04:00\". In other words, the year, month, day, the letter T, the hour (24-hour clock system), minute, second, and then the time zone offset.", + "location": "query" + }, + "objectIds": { + "type": "string", + "description": "Select only change logs with these object IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "objectType": { + "type": "string", + "description": "Select only change logs with the specified object type.", + "enum": [ + "OBJECT_ACCOUNT", + "OBJECT_ACCOUNT_BILLING_FEATURE", + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_ADVERTISER_GROUP", + "OBJECT_BILLING_ACCOUNT_GROUP", + "OBJECT_BILLING_FEATURE", + "OBJECT_BILLING_MINIMUM_FEE", + "OBJECT_BILLING_PROFILE", + "OBJECT_CAMPAIGN", + "OBJECT_CONTENT_CATEGORY", + "OBJECT_CREATIVE", + "OBJECT_CREATIVE_ASSET", + "OBJECT_CREATIVE_BUNDLE", + "OBJECT_CREATIVE_FIELD", + "OBJECT_CREATIVE_GROUP", + "OBJECT_DFA_SITE", + "OBJECT_EVENT_TAG", + "OBJECT_FLOODLIGHT_ACTIVITY_GROUP", + "OBJECT_FLOODLIGHT_ACTVITY", + "OBJECT_FLOODLIGHT_CONFIGURATION", + "OBJECT_INSTREAM_CREATIVE", + "OBJECT_LANDING_PAGE", + "OBJECT_MEDIA_ORDER", + "OBJECT_PLACEMENT", + "OBJECT_PLACEMENT_STRATEGY", + "OBJECT_PLAYSTORE_LINK", + "OBJECT_PROVIDED_LIST_CLIENT", + "OBJECT_RATE_CARD", + "OBJECT_REMARKETING_LIST", + "OBJECT_RICHMEDIA_CREATIVE", + "OBJECT_SD_SITE", + "OBJECT_SIZE", + "OBJECT_SUBACCOUNT", + "OBJECT_TARGETING_TEMPLATE", + "OBJECT_USER_PROFILE", + "OBJECT_USER_PROFILE_FILTER", + "OBJECT_USER_ROLE" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Select only change logs whose object ID, user name, old or new values match the search string.", + "location": "query" + }, + "userProfileIds": { + "type": "string", + "description": "Select only change logs with these user profile IDs.", + "format": "int64", + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ChangeLogsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "cities": { + "methods": { + "list": { + "id": "dfareporting.cities.list", + "path": "userprofiles/{profileId}/cities", + "httpMethod": "GET", + "description": "Retrieves a list of cities, possibly filtered.", + "parameters": { + "countryDartIds": { + "type": "string", + "description": "Select only cities from these countries.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "dartIds": { + "type": "string", + "description": "Select only cities with these DART IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "namePrefix": { + "type": "string", + "description": "Select only cities with names starting with this prefix.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "regionDartIds": { + "type": "string", + "description": "Select only cities from these regions.", + "format": "int64", + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "connectionTypes": { + "methods": { + "get": { + "id": "dfareporting.connectionTypes.get", + "path": "userprofiles/{profileId}/connectionTypes/{id}", + "httpMethod": "GET", + "description": "Gets one connection type by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Connection type ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ConnectionType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.connectionTypes.list", + "path": "userprofiles/{profileId}/connectionTypes", + "httpMethod": "GET", + "description": "Retrieves a list of connection types.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ConnectionTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "contentCategories": { + "methods": { + "delete": { + "id": "dfareporting.contentCategories.delete", + "path": "userprofiles/{profileId}/contentCategories/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing content category.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.contentCategories.get", + "path": "userprofiles/{profileId}/contentCategories/{id}", + "httpMethod": "GET", + "description": "Gets one content category by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.contentCategories.insert", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "POST", + "description": "Inserts a new content category.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.contentCategories.list", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "GET", + "description": "Retrieves a list of content categories, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only content categories with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"contentcategory*2015\" will return objects with names like \"contentcategory June 2015\", \"contentcategory April 2015\", or simply \"contentcategory 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"contentcategory\" will match objects with name \"my contentcategory\", \"contentcategory 2015\", or simply \"contentcategory\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ContentCategoriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.contentCategories.patch", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "PATCH", + "description": "Updates an existing content category. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Content category ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.contentCategories.update", + "path": "userprofiles/{profileId}/contentCategories", + "httpMethod": "PUT", + "description": "Updates an existing content category.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ContentCategory" + }, + "response": { + "$ref": "ContentCategory" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "conversions": { + "methods": { + "batchinsert": { + "id": "dfareporting.conversions.batchinsert", + "path": "userprofiles/{profileId}/conversions/batchinsert", + "httpMethod": "POST", + "description": "Inserts conversions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "ConversionsBatchInsertRequest" + }, + "response": { + "$ref": "ConversionsBatchInsertResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/ddmconversions" + ] + } + } + }, + "countries": { + "methods": { + "get": { + "id": "dfareporting.countries.get", + "path": "userprofiles/{profileId}/countries/{dartId}", + "httpMethod": "GET", + "description": "Gets one country by ID.", + "parameters": { + "dartId": { + "type": "string", + "description": "Country DART ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "dartId" + ], + "response": { + "$ref": "Country" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.countries.list", + "path": "userprofiles/{profileId}/countries", + "httpMethod": "GET", + "description": "Retrieves a list of countries.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CountriesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeAssets": { + "methods": { + "insert": { + "id": "dfareporting.creativeAssets.insert", + "path": "userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets", + "httpMethod": "POST", + "description": "Inserts a new creative asset.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Advertiser ID of this creative. This is a required field.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "request": { + "$ref": "CreativeAssetMetadata" + }, + "response": { + "$ref": "CreativeAssetMetadata" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ], + "supportsMediaUpload": true, + "mediaUpload": { + "accept": [ + "*/*" + ], + "maxSize": "1024MB", + "protocols": { + "simple": { + "multipart": true, + "path": "/upload/dfareporting/v2.6/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + }, + "resumable": { + "multipart": true, + "path": "/resumable/upload/dfareporting/v2.6/userprofiles/{profileId}/creativeAssets/{advertiserId}/creativeAssets" + } + } + } + } + } + }, + "creativeFieldValues": { + "methods": { + "delete": { + "id": "dfareporting.creativeFieldValues.delete", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.creativeFieldValues.get", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues/{id}", + "httpMethod": "GET", + "description": "Gets one creative field value by ID.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeFieldValues.insert", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "POST", + "description": "Inserts a new creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeFieldValues.list", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "GET", + "description": "Retrieves a list of creative field values, possibly filtered.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "ids": { + "type": "string", + "description": "Select only creative field values with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative field values by their values. Wildcards (e.g. *) are not allowed.", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "VALUE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "response": { + "$ref": "CreativeFieldValuesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeFieldValues.patch", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "PATCH", + "description": "Updates an existing creative field value. This method supports patch semantics.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Creative Field Value ID", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId", + "id" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeFieldValues.update", + "path": "userprofiles/{profileId}/creativeFields/{creativeFieldId}/creativeFieldValues", + "httpMethod": "PUT", + "description": "Updates an existing creative field value.", + "parameters": { + "creativeFieldId": { + "type": "string", + "description": "Creative field ID for this creative field value.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "creativeFieldId" + ], + "request": { + "$ref": "CreativeFieldValue" + }, + "response": { + "$ref": "CreativeFieldValue" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeFields": { + "methods": { + "delete": { + "id": "dfareporting.creativeFields.delete", + "path": "userprofiles/{profileId}/creativeFields/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing creative field.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.creativeFields.get", + "path": "userprofiles/{profileId}/creativeFields/{id}", + "httpMethod": "GET", + "description": "Gets one creative field by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeFields.insert", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "POST", + "description": "Inserts a new creative field.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeFields.list", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "GET", + "description": "Retrieves a list of creative fields, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only creative fields that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creative fields with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative fields by name or ID. Wildcards (*) are allowed. For example, \"creativefield*2015\" will return creative fields with names like \"creativefield June 2015\", \"creativefield April 2015\", or simply \"creativefield 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativefield\" will match creative fields with the name \"my creativefield\", \"creativefield 2015\", or simply \"creativefield\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativeFieldsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeFields.patch", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "PATCH", + "description": "Updates an existing creative field. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative Field ID", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeFields.update", + "path": "userprofiles/{profileId}/creativeFields", + "httpMethod": "PUT", + "description": "Updates an existing creative field.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeField" + }, + "response": { + "$ref": "CreativeField" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creativeGroups": { + "methods": { + "get": { + "id": "dfareporting.creativeGroups.get", + "path": "userprofiles/{profileId}/creativeGroups/{id}", + "httpMethod": "GET", + "description": "Gets one creative group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creativeGroups.insert", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "POST", + "description": "Inserts a new creative group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creativeGroups.list", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "GET", + "description": "Retrieves a list of creative groups, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only creative groups that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "groupNumber": { + "type": "integer", + "description": "Select only creative groups that belong to this subgroup.", + "format": "int32", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creative groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for creative groups by name or ID. Wildcards (*) are allowed. For example, \"creativegroup*2015\" will return creative groups with names like \"creativegroup June 2015\", \"creativegroup April 2015\", or simply \"creativegroup 2015\". Most of the searches also add wild-cards implicitly at the start and the end of the search string. For example, a search string of \"creativegroup\" will match creative groups with the name \"my creativegroup\", \"creativegroup 2015\", or simply \"creativegroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativeGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creativeGroups.patch", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "PATCH", + "description": "Updates an existing creative group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creativeGroups.update", + "path": "userprofiles/{profileId}/creativeGroups", + "httpMethod": "PUT", + "description": "Updates an existing creative group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "CreativeGroup" + }, + "response": { + "$ref": "CreativeGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "creatives": { + "methods": { + "get": { + "id": "dfareporting.creatives.get", + "path": "userprofiles/{profileId}/creatives/{id}", + "httpMethod": "GET", + "description": "Gets one creative by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Creative ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.creatives.insert", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "POST", + "description": "Inserts a new creative.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.creatives.list", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "GET", + "description": "Retrieves a list of creatives, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active creatives. Leave blank to select active and inactive creatives.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only creatives with this advertiser ID.", + "format": "int64", + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived creatives. Leave blank to select archived and unarchived creatives.", + "location": "query" + }, + "campaignId": { + "type": "string", + "description": "Select only creatives with this campaign ID.", + "format": "int64", + "location": "query" + }, + "companionCreativeIds": { + "type": "string", + "description": "Select only in-stream video creatives with these companion IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "creativeFieldIds": { + "type": "string", + "description": "Select only creatives with these creative field IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only creatives with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "renderingIds": { + "type": "string", + "description": "Select only creatives with these rendering IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"creative*2015\" will return objects with names like \"creative June 2015\", \"creative April 2015\", or simply \"creative 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"creative\" will match objects with name \"my creative\", \"creative 2015\", or simply \"creative\".", + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only creatives with these size IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "studioCreativeId": { + "type": "string", + "description": "Select only creatives corresponding to this Studio creative ID.", + "format": "int64", + "location": "query" + }, + "types": { + "type": "string", + "description": "Select only creatives with these creative types.", + "enum": [ + "BRAND_SAFE_DEFAULT_INSTREAM_VIDEO", + "CUSTOM_DISPLAY", + "CUSTOM_DISPLAY_INTERSTITIAL", + "DISPLAY", + "DISPLAY_IMAGE_GALLERY", + "DISPLAY_REDIRECT", + "FLASH_INPAGE", + "HTML5_BANNER", + "IMAGE", + "INSTREAM_VIDEO", + "INSTREAM_VIDEO_REDIRECT", + "INTERNAL_REDIRECT", + "INTERSTITIAL_INTERNAL_REDIRECT", + "RICH_MEDIA_DISPLAY_BANNER", + "RICH_MEDIA_DISPLAY_EXPANDING", + "RICH_MEDIA_DISPLAY_INTERSTITIAL", + "RICH_MEDIA_DISPLAY_MULTI_FLOATING_INTERSTITIAL", + "RICH_MEDIA_IM_EXPAND", + "RICH_MEDIA_INPAGE_FLOATING", + "RICH_MEDIA_MOBILE_IN_APP", + "RICH_MEDIA_PEEL_DOWN", + "TRACKING_TEXT", + "VPAID_LINEAR_VIDEO", + "VPAID_NON_LINEAR_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "CreativesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.creatives.patch", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "PATCH", + "description": "Updates an existing creative. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Creative ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.creatives.update", + "path": "userprofiles/{profileId}/creatives", + "httpMethod": "PUT", + "description": "Updates an existing creative.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Creative" + }, + "response": { + "$ref": "Creative" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "dimensionValues": { + "methods": { + "query": { + "id": "dfareporting.dimensionValues.query", + "path": "userprofiles/{profileId}/dimensionvalues/query", + "httpMethod": "POST", + "description": "Retrieves list of report dimension values for a list of filters.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "100", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DimensionValueRequest" + }, + "response": { + "$ref": "DimensionValueList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "directorySiteContacts": { + "methods": { + "get": { + "id": "dfareporting.directorySiteContacts.get", + "path": "userprofiles/{profileId}/directorySiteContacts/{id}", + "httpMethod": "GET", + "description": "Gets one directory site contact by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Directory site contact ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "DirectorySiteContact" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.directorySiteContacts.list", + "path": "userprofiles/{profileId}/directorySiteContacts", + "httpMethod": "GET", + "description": "Retrieves a list of directory site contacts, possibly filtered.", + "parameters": { + "directorySiteIds": { + "type": "string", + "description": "Select only directory site contacts with these directory site IDs. This is a required field.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only directory site contacts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or email. Wildcards (*) are allowed. For example, \"directory site contact*2015\" will return objects with names like \"directory site contact June 2015\", \"directory site contact April 2015\", or simply \"directory site contact 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site contact\" will match objects with name \"my directory site contact\", \"directory site contact 2015\", or simply \"directory site contact\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DirectorySiteContactsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "directorySites": { + "methods": { + "get": { + "id": "dfareporting.directorySites.get", + "path": "userprofiles/{profileId}/directorySites/{id}", + "httpMethod": "GET", + "description": "Gets one directory site by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Directory site ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.directorySites.insert", + "path": "userprofiles/{profileId}/directorySites", + "httpMethod": "POST", + "description": "Inserts a new directory site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DirectorySite" + }, + "response": { + "$ref": "DirectorySite" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.directorySites.list", + "path": "userprofiles/{profileId}/directorySites", + "httpMethod": "GET", + "description": "Retrieves a list of directory sites, possibly filtered.", + "parameters": { + "acceptsInStreamVideoPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsInterstitialPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsPublisherPaidPlacements": { + "type": "boolean", + "description": "Select only directory sites that accept publisher paid placements. This field can be left blank.", + "location": "query" + }, + "active": { + "type": "boolean", + "description": "Select only active directory sites. Leave blank to retrieve both active and inactive directory sites.", + "location": "query" + }, + "countryId": { + "type": "string", + "description": "Select only directory sites with this country ID.", + "format": "int64", + "location": "query" + }, + "dfp_network_code": { + "type": "string", + "description": "Select only directory sites with this DFP network code.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only directory sites with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "parentId": { + "type": "string", + "description": "Select only directory sites with this parent ID.", + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or URL. Wildcards (*) are allowed. For example, \"directory site*2015\" will return objects with names like \"directory site June 2015\", \"directory site April 2015\", or simply \"directory site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"directory site\" will match objects with name \"my directory site\", \"directory site 2015\" or simply, \"directory site\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DirectorySitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "dynamicTargetingKeys": { + "methods": { + "delete": { + "id": "dfareporting.dynamicTargetingKeys.delete", + "path": "userprofiles/{profileId}/dynamicTargetingKeys/{objectId}", + "httpMethod": "DELETE", + "description": "Deletes an existing dynamic targeting key.", + "parameters": { + "name": { + "type": "string", + "description": "Name of this dynamic targeting key. This is a required field. Must be less than 256 characters long and cannot contain commas. All characters are converted to lowercase.", + "required": true, + "location": "query" + }, + "objectId": { + "type": "string", + "description": "ID of the object of this dynamic targeting key. This is a required field.", + "required": true, + "format": "int64", + "location": "path" + }, + "objectType": { + "type": "string", + "description": "Type of the object of this dynamic targeting key. This is a required field.", + "required": true, + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "objectId", + "name", + "objectType" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.dynamicTargetingKeys.insert", + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "httpMethod": "POST", + "description": "Inserts a new dynamic targeting key. Keys must be created at the advertiser level before being assigned to the advertiser's ads, creatives, or placements. There is a maximum of 1000 keys per advertiser, out of which a maximum of 20 keys can be assigned per ad, creative, or placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "DynamicTargetingKey" + }, + "response": { + "$ref": "DynamicTargetingKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.dynamicTargetingKeys.list", + "path": "userprofiles/{profileId}/dynamicTargetingKeys", + "httpMethod": "GET", + "description": "Retrieves a list of dynamic targeting keys.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only dynamic targeting keys whose object has this advertiser ID.", + "format": "int64", + "location": "query" + }, + "names": { + "type": "string", + "description": "Select only dynamic targeting keys exactly matching these names.", + "repeated": true, + "location": "query" + }, + "objectId": { + "type": "string", + "description": "Select only dynamic targeting keys with this object ID.", + "format": "int64", + "location": "query" + }, + "objectType": { + "type": "string", + "description": "Select only dynamic targeting keys with this object type.", + "enum": [ + "OBJECT_AD", + "OBJECT_ADVERTISER", + "OBJECT_CREATIVE", + "OBJECT_PLACEMENT" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ], + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "DynamicTargetingKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "eventTags": { + "methods": { + "delete": { + "id": "dfareporting.eventTags.delete", + "path": "userprofiles/{profileId}/eventTags/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing event tag.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.eventTags.get", + "path": "userprofiles/{profileId}/eventTags/{id}", + "httpMethod": "GET", + "description": "Gets one event tag by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.eventTags.insert", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "POST", + "description": "Inserts a new event tag.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.eventTags.list", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "GET", + "description": "Retrieves a list of event tags, possibly filtered.", + "parameters": { + "adId": { + "type": "string", + "description": "Select only event tags that belong to this ad.", + "format": "int64", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only event tags that belong to this advertiser.", + "format": "int64", + "location": "query" + }, + "campaignId": { + "type": "string", + "description": "Select only event tags that belong to this campaign.", + "format": "int64", + "location": "query" + }, + "definitionsOnly": { + "type": "boolean", + "description": "Examine only the specified campaign or advertiser's event tags for matching selector criteria. When set to false, the parent advertiser and parent campaign of the specified ad or campaign is examined as well. In addition, when set to false, the status field is examined as well, along with the enabledByDefault field. This parameter can not be set to true when adId is specified as ads do not define their own even tags.", + "location": "query" + }, + "enabled": { + "type": "boolean", + "description": "Select only enabled event tags. What is considered enabled or disabled depends on the definitionsOnly parameter. When definitionsOnly is set to true, only the specified advertiser or campaign's event tags' enabledByDefault field is examined. When definitionsOnly is set to false, the specified ad or specified campaign's parent advertiser's or parent campaign's event tags' enabledByDefault and status fields are examined as well.", + "location": "query" + }, + "eventTagTypes": { + "type": "string", + "description": "Select only event tags with the specified event tag types. Event tag types can be used to specify whether to use a third-party pixel, a third-party JavaScript URL, or a third-party click-through URL for either impression or click tracking.", + "enum": [ + "CLICK_THROUGH_EVENT_TAG", + "IMPRESSION_IMAGE_EVENT_TAG", + "IMPRESSION_JAVASCRIPT_EVENT_TAG" + ], + "enumDescriptions": [ + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only event tags with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"eventtag*2015\" will return objects with names like \"eventtag June 2015\", \"eventtag April 2015\", or simply \"eventtag 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"eventtag\" will match objects with name \"my eventtag\", \"eventtag 2015\", or simply \"eventtag\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "EventTagsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.eventTags.patch", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "PATCH", + "description": "Updates an existing event tag. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Event tag ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.eventTags.update", + "path": "userprofiles/{profileId}/eventTags", + "httpMethod": "PUT", + "description": "Updates an existing event tag.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "EventTag" + }, + "response": { + "$ref": "EventTag" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "files": { + "methods": { + "get": { + "id": "dfareporting.files.get", + "path": "reports/{reportId}/files/{fileId}", + "httpMethod": "GET", + "description": "Retrieves a report file by its report ID and file ID.", + "parameters": { + "fileId": { + "type": "string", + "description": "The ID of the report file.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "reportId", + "fileId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "id": "dfareporting.files.list", + "path": "userprofiles/{profileId}/files", + "httpMethod": "GET", + "description": "Lists files for a user profile.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "scope": { + "type": "string", + "description": "The scope that defines which results are returned, default is 'MINE'.", + "default": "MINE", + "enum": [ + "ALL", + "MINE", + "SHARED_WITH_ME" + ], + "enumDescriptions": [ + "All files in account.", + "My files.", + "Files shared with me." + ], + "location": "query" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "floodlightActivities": { + "methods": { + "delete": { + "id": "dfareporting.floodlightActivities.delete", + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing floodlight activity.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "generatetag": { + "id": "dfareporting.floodlightActivities.generatetag", + "path": "userprofiles/{profileId}/floodlightActivities/generatetag", + "httpMethod": "POST", + "description": "Generates a tag for a floodlight activity.", + "parameters": { + "floodlightActivityId": { + "type": "string", + "description": "Floodlight activity ID for which we want to generate a tag.", + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivitiesGenerateTagResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.floodlightActivities.get", + "path": "userprofiles/{profileId}/floodlightActivities/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight activity by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.floodlightActivities.insert", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "POST", + "description": "Inserts a new floodlight activity.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightActivities.list", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight activities, possibly filtered.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only floodlight activities for the specified advertiser ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "floodlightActivityGroupIds": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "floodlightActivityGroupName": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group name.", + "location": "query" + }, + "floodlightActivityGroupTagString": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group tag string.", + "location": "query" + }, + "floodlightActivityGroupType": { + "type": "string", + "description": "Select only floodlight activities with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Select only floodlight activities for the specified floodlight configuration ID. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only floodlight activities with the specified IDs. Must specify either ids, advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivity*2015\" will return objects with names like \"floodlightactivity June 2015\", \"floodlightactivity April 2015\", or simply \"floodlightactivity 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivity\" will match objects with name \"my floodlightactivity activity\", \"floodlightactivity 2015\", or simply \"floodlightactivity\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "tagString": { + "type": "string", + "description": "Select only floodlight activities with the specified tag string.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivitiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightActivities.patch", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight activity. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightActivities.update", + "path": "userprofiles/{profileId}/floodlightActivities", + "httpMethod": "PUT", + "description": "Updates an existing floodlight activity.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivity" + }, + "response": { + "$ref": "FloodlightActivity" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightActivityGroups": { + "methods": { + "get": { + "id": "dfareporting.floodlightActivityGroups.get", + "path": "userprofiles/{profileId}/floodlightActivityGroups/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight activity group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity Group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.floodlightActivityGroups.insert", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "POST", + "description": "Inserts a new floodlight activity group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightActivityGroups.list", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight activity groups, possibly filtered.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only floodlight activity groups with the specified advertiser ID. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "floodlightConfigurationId": { + "type": "string", + "description": "Select only floodlight activity groups with the specified floodlight configuration ID. Must specify either advertiserId, or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only floodlight activity groups with the specified IDs. Must specify either advertiserId or floodlightConfigurationId for a non-empty result.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"floodlightactivitygroup*2015\" will return objects with names like \"floodlightactivitygroup June 2015\", \"floodlightactivitygroup April 2015\", or simply \"floodlightactivitygroup 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"floodlightactivitygroup\" will match objects with name \"my floodlightactivitygroup activity\", \"floodlightactivitygroup 2015\", or simply \"floodlightactivitygroup\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only floodlight activity groups with the specified floodlight activity group type.", + "enum": [ + "COUNTER", + "SALE" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightActivityGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightActivityGroups.patch", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight activity group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight activity Group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightActivityGroups.update", + "path": "userprofiles/{profileId}/floodlightActivityGroups", + "httpMethod": "PUT", + "description": "Updates an existing floodlight activity group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightActivityGroup" + }, + "response": { + "$ref": "FloodlightActivityGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "floodlightConfigurations": { + "methods": { + "get": { + "id": "dfareporting.floodlightConfigurations.get", + "path": "userprofiles/{profileId}/floodlightConfigurations/{id}", + "httpMethod": "GET", + "description": "Gets one floodlight configuration by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight configuration ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.floodlightConfigurations.list", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "GET", + "description": "Retrieves a list of floodlight configurations, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Set of IDs of floodlight configurations to retrieve. Required field; otherwise an empty list will be returned.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "FloodlightConfigurationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.floodlightConfigurations.patch", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "PATCH", + "description": "Updates an existing floodlight configuration. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Floodlight configuration ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.floodlightConfigurations.update", + "path": "userprofiles/{profileId}/floodlightConfigurations", + "httpMethod": "PUT", + "description": "Updates an existing floodlight configuration.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "FloodlightConfiguration" + }, + "response": { + "$ref": "FloodlightConfiguration" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "inventoryItems": { + "methods": { + "get": { + "id": "dfareporting.inventoryItems.get", + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems/{id}", + "httpMethod": "GET", + "description": "Gets one inventory item by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Inventory item ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "InventoryItem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.inventoryItems.list", + "path": "userprofiles/{profileId}/projects/{projectId}/inventoryItems", + "httpMethod": "GET", + "description": "Retrieves a list of inventory items, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only inventory items with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "inPlan": { + "type": "boolean", + "description": "Select only inventory items that are in plan.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "orderId": { + "type": "string", + "description": "Select only inventory items that belong to specified orders.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + }, + "siteId": { + "type": "string", + "description": "Select only inventory items that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "type": { + "type": "string", + "description": "Select only inventory items with this type.", + "enum": [ + "PLANNING_PLACEMENT_TYPE_CREDIT", + "PLANNING_PLACEMENT_TYPE_REGULAR" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "InventoryItemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "landingPages": { + "methods": { + "delete": { + "id": "dfareporting.landingPages.delete", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing campaign landing page.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.landingPages.get", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages/{id}", + "httpMethod": "GET", + "description": "Gets one campaign landing page by ID.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.landingPages.insert", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "POST", + "description": "Inserts a new landing page for the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.landingPages.list", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "GET", + "description": "Retrieves the list of landing pages for the specified campaign.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "response": { + "$ref": "LandingPagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.landingPages.patch", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "PATCH", + "description": "Updates an existing campaign landing page. This method supports patch semantics.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "id": { + "type": "string", + "description": "Landing page ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId", + "id" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.landingPages.update", + "path": "userprofiles/{profileId}/campaigns/{campaignId}/landingPages", + "httpMethod": "PUT", + "description": "Updates an existing campaign landing page.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Landing page campaign ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "campaignId" + ], + "request": { + "$ref": "LandingPage" + }, + "response": { + "$ref": "LandingPage" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "languages": { + "methods": { + "list": { + "id": "dfareporting.languages.list", + "path": "userprofiles/{profileId}/languages", + "httpMethod": "GET", + "description": "Retrieves a list of languages.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "LanguagesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "metros": { + "methods": { + "list": { + "id": "dfareporting.metros.list", + "path": "userprofiles/{profileId}/metros", + "httpMethod": "GET", + "description": "Retrieves a list of metros.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "MetrosListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "mobileCarriers": { + "methods": { + "get": { + "id": "dfareporting.mobileCarriers.get", + "path": "userprofiles/{profileId}/mobileCarriers/{id}", + "httpMethod": "GET", + "description": "Gets one mobile carrier by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Mobile carrier ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "MobileCarrier" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.mobileCarriers.list", + "path": "userprofiles/{profileId}/mobileCarriers", + "httpMethod": "GET", + "description": "Retrieves a list of mobile carriers.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "MobileCarriersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystemVersions": { + "methods": { + "get": { + "id": "dfareporting.operatingSystemVersions.get", + "path": "userprofiles/{profileId}/operatingSystemVersions/{id}", + "httpMethod": "GET", + "description": "Gets one operating system version by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Operating system version ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "OperatingSystemVersion" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.operatingSystemVersions.list", + "path": "userprofiles/{profileId}/operatingSystemVersions", + "httpMethod": "GET", + "description": "Retrieves a list of operating system versions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "OperatingSystemVersionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "operatingSystems": { + "methods": { + "get": { + "id": "dfareporting.operatingSystems.get", + "path": "userprofiles/{profileId}/operatingSystems/{dartId}", + "httpMethod": "GET", + "description": "Gets one operating system by DART ID.", + "parameters": { + "dartId": { + "type": "string", + "description": "Operating system DART ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "dartId" + ], + "response": { + "$ref": "OperatingSystem" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.operatingSystems.list", + "path": "userprofiles/{profileId}/operatingSystems", + "httpMethod": "GET", + "description": "Retrieves a list of operating systems.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "OperatingSystemsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orderDocuments": { + "methods": { + "get": { + "id": "dfareporting.orderDocuments.get", + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments/{id}", + "httpMethod": "GET", + "description": "Gets one order document by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Order document ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "OrderDocument" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.orderDocuments.list", + "path": "userprofiles/{profileId}/projects/{projectId}/orderDocuments", + "httpMethod": "GET", + "description": "Retrieves a list of order documents, possibly filtered.", + "parameters": { + "approved": { + "type": "boolean", + "description": "Select only order documents that have been approved by at least one user.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only order documents with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "orderId": { + "type": "string", + "description": "Select only order documents for specified orders.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for order documents.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for order documents by name or ID. Wildcards (*) are allowed. For example, \"orderdocument*2015\" will return order documents with names like \"orderdocument June 2015\", \"orderdocument April 2015\", or simply \"orderdocument 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"orderdocument\" will match order documents with name \"my orderdocument\", \"orderdocument 2015\", or simply \"orderdocument\".", + "location": "query" + }, + "siteId": { + "type": "string", + "description": "Select only order documents that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "OrderDocumentsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "orders": { + "methods": { + "get": { + "id": "dfareporting.orders.get", + "path": "userprofiles/{profileId}/projects/{projectId}/orders/{id}", + "httpMethod": "GET", + "description": "Gets one order by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Order ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for orders.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "projectId", + "id" + ], + "response": { + "$ref": "Order" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.orders.list", + "path": "userprofiles/{profileId}/projects/{projectId}/orders", + "httpMethod": "GET", + "description": "Retrieves a list of orders, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only orders with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "Project ID for orders.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for orders by name or ID. Wildcards (*) are allowed. For example, \"order*2015\" will return orders with names like \"order June 2015\", \"order April 2015\", or simply \"order 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"order\" will match orders with name \"my order\", \"order 2015\", or simply \"order\".", + "location": "query" + }, + "siteId": { + "type": "string", + "description": "Select only orders that are associated with these site IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "projectId" + ], + "response": { + "$ref": "OrdersListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementGroups": { + "methods": { + "get": { + "id": "dfareporting.placementGroups.get", + "path": "userprofiles/{profileId}/placementGroups/{id}", + "httpMethod": "GET", + "description": "Gets one placement group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placementGroups.insert", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "POST", + "description": "Inserts a new placement group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placementGroups.list", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "GET", + "description": "Retrieves a list of placement groups, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only placement groups that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only placement groups that belong to these campaigns.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "contentCategoryIds": { + "type": "string", + "description": "Select only placement groups that are associated with these content categories.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only placement groups that are associated with these directory sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only placement groups with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "maxStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "placementGroupType": { + "type": "string", + "description": "Select only placement groups belonging with this group type. A package is a simple group of placements that acts as a single pricing point for a group of tags. A roadblock is a group of placements that not only acts as a single pricing point but also assumes that all the tags in it will be served at the same time. A roadblock requires one of its assigned placements to be marked as primary for reporting.", + "enum": [ + "PLACEMENT_PACKAGE", + "PLACEMENT_ROADBLOCK" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "placementStrategyIds": { + "type": "string", + "description": "Select only placement groups that are associated with these placement strategies.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pricingTypes": { + "type": "string", + "description": "Select only placement groups with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for placement groups by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placement groups with names like \"placement group June 2015\", \"placement group May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementgroup\" will match placement groups with name \"my placementgroup\", \"placementgroup 2015\", or simply \"placementgroup\".", + "location": "query" + }, + "siteIds": { + "type": "string", + "description": "Select only placement groups that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placementGroups.patch", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "PATCH", + "description": "Updates an existing placement group. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement group ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placementGroups.update", + "path": "userprofiles/{profileId}/placementGroups", + "httpMethod": "PUT", + "description": "Updates an existing placement group.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementGroup" + }, + "response": { + "$ref": "PlacementGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placementStrategies": { + "methods": { + "delete": { + "id": "dfareporting.placementStrategies.delete", + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing placement strategy.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.placementStrategies.get", + "path": "userprofiles/{profileId}/placementStrategies/{id}", + "httpMethod": "GET", + "description": "Gets one placement strategy by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placementStrategies.insert", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "POST", + "description": "Inserts a new placement strategy.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placementStrategies.list", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "GET", + "description": "Retrieves a list of placement strategies, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only placement strategies with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"placementstrategy*2015\" will return objects with names like \"placementstrategy June 2015\", \"placementstrategy April 2015\", or simply \"placementstrategy 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placementstrategy\" will match objects with name \"my placementstrategy\", \"placementstrategy 2015\", or simply \"placementstrategy\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementStrategiesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placementStrategies.patch", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "PATCH", + "description": "Updates an existing placement strategy. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement strategy ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placementStrategies.update", + "path": "userprofiles/{profileId}/placementStrategies", + "httpMethod": "PUT", + "description": "Updates an existing placement strategy.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "PlacementStrategy" + }, + "response": { + "$ref": "PlacementStrategy" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "placements": { + "methods": { + "generatetags": { + "id": "dfareporting.placements.generatetags", + "path": "userprofiles/{profileId}/placements/generatetags", + "httpMethod": "POST", + "description": "Generates tags for a placement.", + "parameters": { + "campaignId": { + "type": "string", + "description": "Generate placements belonging to this campaign. This is a required field.", + "format": "int64", + "location": "query" + }, + "placementIds": { + "type": "string", + "description": "Generate tags for these placements.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "tagFormats": { + "type": "string", + "description": "Tag formats to generate for these placements.", + "enum": [ + "PLACEMENT_TAG_CLICK_COMMANDS", + "PLACEMENT_TAG_IFRAME_ILAYER", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH", + "PLACEMENT_TAG_INSTREAM_VIDEO_PREFETCH_VAST_3", + "PLACEMENT_TAG_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_IFRAME_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_INTERSTITIAL_INTERNAL_REDIRECT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT", + "PLACEMENT_TAG_INTERSTITIAL_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_JAVASCRIPT", + "PLACEMENT_TAG_JAVASCRIPT_LEGACY", + "PLACEMENT_TAG_STANDARD", + "PLACEMENT_TAG_TRACKING", + "PLACEMENT_TAG_TRACKING_IFRAME", + "PLACEMENT_TAG_TRACKING_JAVASCRIPT" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementsGenerateTagsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.placements.get", + "path": "userprofiles/{profileId}/placements/{id}", + "httpMethod": "GET", + "description": "Gets one placement by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Placement ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.placements.insert", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "POST", + "description": "Inserts a new placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.placements.list", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "GET", + "description": "Retrieves a list of placements, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only placements that belong to these advertisers.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "archived": { + "type": "boolean", + "description": "Select only archived placements. Don't set this field to select both archived and non-archived placements.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only placements that belong to these campaigns.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "compatibilities": { + "type": "string", + "description": "Select only placements that are associated with these compatibilities. DISPLAY and DISPLAY_INTERSTITIAL refer to rendering either on desktop or on mobile devices for regular or interstitial ads respectively. APP and APP_INTERSTITIAL are for rendering in mobile apps. IN_STREAM_VIDEO refers to rendering in in-stream video ads developed with the VAST standard.", + "enum": [ + "APP", + "APP_INTERSTITIAL", + "DISPLAY", + "DISPLAY_INTERSTITIAL", + "IN_STREAM_VIDEO" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "contentCategoryIds": { + "type": "string", + "description": "Select only placements that are associated with these content categories.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only placements that are associated with these directory sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "groupIds": { + "type": "string", + "description": "Select only placements that belong to these placement groups.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only placements with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or before the specified maxEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "maxStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or before the specified maxStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minEndDate": { + "type": "string", + "description": "Select only placements or placement groups whose end date is on or after the specified minEndDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "minStartDate": { + "type": "string", + "description": "Select only placements or placement groups whose start date is on or after the specified minStartDate. The date should be formatted as \"yyyy-MM-dd\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "paymentSource": { + "type": "string", + "description": "Select only placements with this payment source.", + "enum": [ + "PLACEMENT_AGENCY_PAID", + "PLACEMENT_PUBLISHER_PAID" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "placementStrategyIds": { + "type": "string", + "description": "Select only placements that are associated with these placement strategies.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "pricingTypes": { + "type": "string", + "description": "Select only placements with these pricing types.", + "enum": [ + "PRICING_TYPE_CPA", + "PRICING_TYPE_CPC", + "PRICING_TYPE_CPM", + "PRICING_TYPE_CPM_ACTIVEVIEW", + "PRICING_TYPE_FLAT_RATE_CLICKS", + "PRICING_TYPE_FLAT_RATE_IMPRESSIONS" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ], + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for placements by name or ID. Wildcards (*) are allowed. For example, \"placement*2015\" will return placements with names like \"placement June 2015\", \"placement May 2015\", or simply \"placements 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"placement\" will match placements with name \"my placement\", \"placement 2015\", or simply \"placement\".", + "location": "query" + }, + "siteIds": { + "type": "string", + "description": "Select only placements that are associated with these sites.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sizeIds": { + "type": "string", + "description": "Select only placements that are associated with these sizes.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlacementsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.placements.patch", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "PATCH", + "description": "Updates an existing placement. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Placement ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.placements.update", + "path": "userprofiles/{profileId}/placements", + "httpMethod": "PUT", + "description": "Updates an existing placement.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Placement" + }, + "response": { + "$ref": "Placement" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "platformTypes": { + "methods": { + "get": { + "id": "dfareporting.platformTypes.get", + "path": "userprofiles/{profileId}/platformTypes/{id}", + "httpMethod": "GET", + "description": "Gets one platform type by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Platform type ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "PlatformType" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.platformTypes.list", + "path": "userprofiles/{profileId}/platformTypes", + "httpMethod": "GET", + "description": "Retrieves a list of platform types.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PlatformTypesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "postalCodes": { + "methods": { + "get": { + "id": "dfareporting.postalCodes.get", + "path": "userprofiles/{profileId}/postalCodes/{code}", + "httpMethod": "GET", + "description": "Gets one postal code by ID.", + "parameters": { + "code": { + "type": "string", + "description": "Postal code ID.", + "required": true, + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "code" + ], + "response": { + "$ref": "PostalCode" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.postalCodes.list", + "path": "userprofiles/{profileId}/postalCodes", + "httpMethod": "GET", + "description": "Retrieves a list of postal codes.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "PostalCodesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "projects": { + "methods": { + "get": { + "id": "dfareporting.projects.get", + "path": "userprofiles/{profileId}/projects/{id}", + "httpMethod": "GET", + "description": "Gets one project by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Project ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.projects.list", + "path": "userprofiles/{profileId}/projects", + "httpMethod": "GET", + "description": "Retrieves a list of projects, possibly filtered.", + "parameters": { + "advertiserIds": { + "type": "string", + "description": "Select only projects with these advertiser IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only projects with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for projects by name or ID. Wildcards (*) are allowed. For example, \"project*2015\" will return projects with names like \"project June 2015\", \"project April 2015\", or simply \"project 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"project\" will match projects with name \"my project\", \"project 2015\", or simply \"project\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ProjectsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "regions": { + "methods": { + "list": { + "id": "dfareporting.regions.list", + "path": "userprofiles/{profileId}/regions", + "httpMethod": "GET", + "description": "Retrieves a list of regions.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "RegionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingListShares": { + "methods": { + "get": { + "id": "dfareporting.remarketingListShares.get", + "path": "userprofiles/{profileId}/remarketingListShares/{remarketingListId}", + "httpMethod": "GET", + "description": "Gets one remarketing list share by remarketing list ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.remarketingListShares.patch", + "path": "userprofiles/{profileId}/remarketingListShares", + "httpMethod": "PATCH", + "description": "Updates an existing remarketing list share. This method supports patch semantics.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "remarketingListId": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "remarketingListId" + ], + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.remarketingListShares.update", + "path": "userprofiles/{profileId}/remarketingListShares", + "httpMethod": "PUT", + "description": "Updates an existing remarketing list share.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingListShare" + }, + "response": { + "$ref": "RemarketingListShare" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "remarketingLists": { + "methods": { + "get": { + "id": "dfareporting.remarketingLists.get", + "path": "userprofiles/{profileId}/remarketingLists/{id}", + "httpMethod": "GET", + "description": "Gets one remarketing list by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.remarketingLists.insert", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "POST", + "description": "Inserts a new remarketing list.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.remarketingLists.list", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "GET", + "description": "Retrieves a list of remarketing lists, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active or only inactive remarketing lists.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only remarketing lists owned by this advertiser.", + "required": true, + "format": "int64", + "location": "query" + }, + "floodlightActivityId": { + "type": "string", + "description": "Select only remarketing lists that have this floodlight activity ID.", + "format": "int64", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "name": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "response": { + "$ref": "RemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.remarketingLists.patch", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "PATCH", + "description": "Updates an existing remarketing list. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.remarketingLists.update", + "path": "userprofiles/{profileId}/remarketingLists", + "httpMethod": "PUT", + "description": "Updates an existing remarketing list.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "RemarketingList" + }, + "response": { + "$ref": "RemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "reports": { + "methods": { + "delete": { + "id": "dfareporting.reports.delete", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "DELETE", + "description": "Deletes a report by its ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "get": { + "id": "dfareporting.reports.get", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "GET", + "description": "Retrieves a report by its ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "insert": { + "id": "dfareporting.reports.insert", + "path": "userprofiles/{profileId}/reports", + "httpMethod": "POST", + "description": "Creates a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "list": { + "id": "dfareporting.reports.list", + "path": "userprofiles/{profileId}/reports", + "httpMethod": "GET", + "description": "Retrieves list of reports.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "scope": { + "type": "string", + "description": "The scope that defines which results are returned, default is 'MINE'.", + "default": "MINE", + "enum": [ + "ALL", + "MINE" + ], + "enumDescriptions": [ + "All reports in account.", + "My reports." + ], + "location": "query" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME", + "NAME" + ], + "enumDescriptions": [ + "Sort by report ID.", + "Sort by 'lastModifiedTime' field.", + "Sort by name of reports." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "ReportList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "patch": { + "id": "dfareporting.reports.patch", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "PATCH", + "description": "Updates a report. This method supports patch semantics.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "run": { + "id": "dfareporting.reports.run", + "path": "userprofiles/{profileId}/reports/{reportId}/run", + "httpMethod": "POST", + "description": "Runs a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + }, + "synchronous": { + "type": "boolean", + "description": "If set and true, tries to run the report synchronously.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + }, + "update": { + "id": "dfareporting.reports.update", + "path": "userprofiles/{profileId}/reports/{reportId}", + "httpMethod": "PUT", + "description": "Updates a report.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "Report" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + }, + "resources": { + "compatibleFields": { + "methods": { + "query": { + "id": "dfareporting.reports.compatibleFields.query", + "path": "userprofiles/{profileId}/reports/compatiblefields/query", + "httpMethod": "POST", + "description": "Returns the fields that are compatible to be selected in the respective sections of a report criteria, given the fields already selected in the input report and user permissions.", + "parameters": { + "profileId": { + "type": "string", + "description": "The DFA user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Report" + }, + "response": { + "$ref": "CompatibleFields" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + }, + "files": { + "methods": { + "get": { + "id": "dfareporting.reports.files.get", + "path": "userprofiles/{profileId}/reports/{reportId}/files/{fileId}", + "httpMethod": "GET", + "description": "Retrieves a report file.", + "parameters": { + "fileId": { + "type": "string", + "description": "The ID of the report file.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the report.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "reportId", + "fileId" + ], + "response": { + "$ref": "File" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ], + "supportsMediaDownload": true + }, + "list": { + "id": "dfareporting.reports.files.list", + "path": "userprofiles/{profileId}/reports/{reportId}/files", + "httpMethod": "GET", + "description": "Lists files for a report.", + "parameters": { + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "minimum": "0", + "maximum": "10", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "The value of the nextToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "The DFA profile ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "reportId": { + "type": "string", + "description": "The ID of the parent report.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "The field by which to sort the list.", + "default": "LAST_MODIFIED_TIME", + "enum": [ + "ID", + "LAST_MODIFIED_TIME" + ], + "enumDescriptions": [ + "Sort by file ID.", + "Sort by 'lastmodifiedAt' field." + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is 'DESCENDING'.", + "default": "DESCENDING", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "Ascending order.", + "Descending order." + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "reportId" + ], + "response": { + "$ref": "FileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting" + ] + } + } + } + } + }, + "sites": { + "methods": { + "get": { + "id": "dfareporting.sites.get", + "path": "userprofiles/{profileId}/sites/{id}", + "httpMethod": "GET", + "description": "Gets one site by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Site ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.sites.insert", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "POST", + "description": "Inserts a new site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.sites.list", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "GET", + "description": "Retrieves a list of sites, possibly filtered.", + "parameters": { + "acceptsInStreamVideoPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsInterstitialPlacements": { + "type": "boolean", + "description": "This search filter is no longer supported and will have no effect on the results returned.", + "location": "query" + }, + "acceptsPublisherPaidPlacements": { + "type": "boolean", + "description": "Select only sites that accept publisher paid placements.", + "location": "query" + }, + "adWordsSite": { + "type": "boolean", + "description": "Select only AdWords sites.", + "location": "query" + }, + "approved": { + "type": "boolean", + "description": "Select only approved sites.", + "location": "query" + }, + "campaignIds": { + "type": "string", + "description": "Select only sites with these campaign IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "directorySiteIds": { + "type": "string", + "description": "Select only sites with these directory site IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only sites with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name, ID or keyName. Wildcards (*) are allowed. For example, \"site*2015\" will return objects with names like \"site June 2015\", \"site April 2015\", or simply \"site 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"site\" will match objects with name \"my site\", \"site 2015\", or simply \"site\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only sites with this subaccount ID.", + "format": "int64", + "location": "query" + }, + "unmappedSite": { + "type": "boolean", + "description": "Select only sites that have not been mapped to a directory site.", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SitesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.sites.patch", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "PATCH", + "description": "Updates an existing site. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Site ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.sites.update", + "path": "userprofiles/{profileId}/sites", + "httpMethod": "PUT", + "description": "Updates an existing site.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Site" + }, + "response": { + "$ref": "Site" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "sizes": { + "methods": { + "get": { + "id": "dfareporting.sizes.get", + "path": "userprofiles/{profileId}/sizes/{id}", + "httpMethod": "GET", + "description": "Gets one size by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Size ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.sizes.insert", + "path": "userprofiles/{profileId}/sizes", + "httpMethod": "POST", + "description": "Inserts a new size.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Size" + }, + "response": { + "$ref": "Size" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.sizes.list", + "path": "userprofiles/{profileId}/sizes", + "httpMethod": "GET", + "description": "Retrieves a list of sizes, possibly filtered.", + "parameters": { + "height": { + "type": "integer", + "description": "Select only sizes with this height.", + "format": "int32", + "location": "query" + }, + "iabStandard": { + "type": "boolean", + "description": "Select only IAB standard sizes.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only sizes with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "width": { + "type": "integer", + "description": "Select only sizes with this width.", + "format": "int32", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SizesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "subaccounts": { + "methods": { + "get": { + "id": "dfareporting.subaccounts.get", + "path": "userprofiles/{profileId}/subaccounts/{id}", + "httpMethod": "GET", + "description": "Gets one subaccount by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Subaccount ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.subaccounts.insert", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "POST", + "description": "Inserts a new subaccount.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.subaccounts.list", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "GET", + "description": "Gets a list of subaccounts, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only subaccounts with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"subaccount*2015\" will return objects with names like \"subaccount June 2015\", \"subaccount April 2015\", or simply \"subaccount 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"subaccount\" will match objects with name \"my subaccount\", \"subaccount 2015\", or simply \"subaccount\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "SubaccountsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.subaccounts.patch", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "PATCH", + "description": "Updates an existing subaccount. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Subaccount ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.subaccounts.update", + "path": "userprofiles/{profileId}/subaccounts", + "httpMethod": "PUT", + "description": "Updates an existing subaccount.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "Subaccount" + }, + "response": { + "$ref": "Subaccount" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetableRemarketingLists": { + "methods": { + "get": { + "id": "dfareporting.targetableRemarketingLists.get", + "path": "userprofiles/{profileId}/targetableRemarketingLists/{id}", + "httpMethod": "GET", + "description": "Gets one remarketing list by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Remarketing list ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "TargetableRemarketingList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.targetableRemarketingLists.list", + "path": "userprofiles/{profileId}/targetableRemarketingLists", + "httpMethod": "GET", + "description": "Retrieves a list of targetable remarketing lists, possibly filtered.", + "parameters": { + "active": { + "type": "boolean", + "description": "Select only active or only inactive targetable remarketing lists.", + "location": "query" + }, + "advertiserId": { + "type": "string", + "description": "Select only targetable remarketing lists targetable by these advertisers.", + "required": true, + "format": "int64", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "name": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"remarketing list*2015\" will return objects with names like \"remarketing list June 2015\", \"remarketing list April 2015\", or simply \"remarketing list 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"remarketing list\" will match objects with name \"my remarketing list\", \"remarketing list 2015\", or simply \"remarketing list\".", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId", + "advertiserId" + ], + "response": { + "$ref": "TargetableRemarketingListsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "targetingTemplates": { + "methods": { + "get": { + "id": "dfareporting.targetingTemplates.get", + "path": "userprofiles/{profileId}/targetingTemplates/{id}", + "httpMethod": "GET", + "description": "Gets one targeting template by ID.", + "parameters": { + "id": { + "type": "string", + "description": "Targeting template ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.targetingTemplates.insert", + "path": "userprofiles/{profileId}/targetingTemplates", + "httpMethod": "POST", + "description": "Inserts a new targeting template.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.targetingTemplates.list", + "path": "userprofiles/{profileId}/targetingTemplates", + "httpMethod": "GET", + "description": "Retrieves a list of targeting templates, optionally filtered.", + "parameters": { + "advertiserId": { + "type": "string", + "description": "Select only targeting templates with this advertiser ID.", + "format": "int64", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only targeting templates with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"template*2015\" will return objects with names like \"template June 2015\", \"template April 2015\", or simply \"template 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"template\" will match objects with name \"my template\", \"template 2015\", or simply \"template\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "TargetingTemplatesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.targetingTemplates.patch", + "path": "userprofiles/{profileId}/targetingTemplates", + "httpMethod": "PATCH", + "description": "Updates an existing targeting template. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "Targeting template ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.targetingTemplates.update", + "path": "userprofiles/{profileId}/targetingTemplates", + "httpMethod": "PUT", + "description": "Updates an existing targeting template.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "TargetingTemplate" + }, + "response": { + "$ref": "TargetingTemplate" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userProfiles": { + "methods": { + "get": { + "id": "dfareporting.userProfiles.get", + "path": "userprofiles/{profileId}", + "httpMethod": "GET", + "description": "Gets one user profile by ID.", + "parameters": { + "profileId": { + "type": "string", + "description": "The user profile ID.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserProfile" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userProfiles.list", + "path": "userprofiles", + "httpMethod": "GET", + "description": "Retrieves list of user profiles for a user.", + "response": { + "$ref": "UserProfileList" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfareporting", + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissionGroups": { + "methods": { + "get": { + "id": "dfareporting.userRolePermissionGroups.get", + "path": "userprofiles/{profileId}/userRolePermissionGroups/{id}", + "httpMethod": "GET", + "description": "Gets one user role permission group by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role permission group ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRolePermissionGroup" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRolePermissionGroups.list", + "path": "userprofiles/{profileId}/userRolePermissionGroups", + "httpMethod": "GET", + "description": "Gets a list of all supported user role permission groups.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolePermissionGroupsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRolePermissions": { + "methods": { + "get": { + "id": "dfareporting.userRolePermissions.get", + "path": "userprofiles/{profileId}/userRolePermissions/{id}", + "httpMethod": "GET", + "description": "Gets one user role permission by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role permission ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRolePermission" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRolePermissions.list", + "path": "userprofiles/{profileId}/userRolePermissions", + "httpMethod": "GET", + "description": "Gets a list of user role permissions, possibly filtered.", + "parameters": { + "ids": { + "type": "string", + "description": "Select only user role permissions with these IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolePermissionsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + }, + "userRoles": { + "methods": { + "delete": { + "id": "dfareporting.userRoles.delete", + "path": "userprofiles/{profileId}/userRoles/{id}", + "httpMethod": "DELETE", + "description": "Deletes an existing user role.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "get": { + "id": "dfareporting.userRoles.get", + "path": "userprofiles/{profileId}/userRoles/{id}", + "httpMethod": "GET", + "description": "Gets one user role by ID.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "path" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "insert": { + "id": "dfareporting.userRoles.insert", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "POST", + "description": "Inserts a new user role.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "list": { + "id": "dfareporting.userRoles.list", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "GET", + "description": "Retrieves a list of user roles, possibly filtered.", + "parameters": { + "accountUserRoleOnly": { + "type": "boolean", + "description": "Select only account level user roles not associated with any specific subaccount.", + "location": "query" + }, + "ids": { + "type": "string", + "description": "Select only user roles with the specified IDs.", + "format": "int64", + "repeated": true, + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Maximum number of results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Value of the nextPageToken from the previous result page.", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + }, + "searchString": { + "type": "string", + "description": "Allows searching for objects by name or ID. Wildcards (*) are allowed. For example, \"userrole*2015\" will return objects with names like \"userrole June 2015\", \"userrole April 2015\", or simply \"userrole 2015\". Most of the searches also add wildcards implicitly at the start and the end of the search string. For example, a search string of \"userrole\" will match objects with name \"my userrole\", \"userrole 2015\", or simply \"userrole\".", + "location": "query" + }, + "sortField": { + "type": "string", + "description": "Field by which to sort the list.", + "enum": [ + "ID", + "NAME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Order of sorted results, default is ASCENDING.", + "enum": [ + "ASCENDING", + "DESCENDING" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + }, + "subaccountId": { + "type": "string", + "description": "Select only user roles that belong to this subaccount.", + "format": "int64", + "location": "query" + } + }, + "parameterOrder": [ + "profileId" + ], + "response": { + "$ref": "UserRolesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "patch": { + "id": "dfareporting.userRoles.patch", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "PATCH", + "description": "Updates an existing user role. This method supports patch semantics.", + "parameters": { + "id": { + "type": "string", + "description": "User role ID.", + "required": true, + "format": "int64", + "location": "query" + }, + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId", + "id" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + }, + "update": { + "id": "dfareporting.userRoles.update", + "path": "userprofiles/{profileId}/userRoles", + "httpMethod": "PUT", + "description": "Updates an existing user role.", + "parameters": { + "profileId": { + "type": "string", + "description": "User profile ID associated with this request.", + "required": true, + "format": "int64", + "location": "path" + } + }, + "parameterOrder": [ + "profileId" + ], + "request": { + "$ref": "UserRole" + }, + "response": { + "$ref": "UserRole" + }, + "scopes": [ + "https://www.googleapis.com/auth/dfatrafficking" + ] + } + } + } + } +} diff --git a/etc/api/discovery/v1/discovery-api.json b/etc/api/discovery/v1/discovery-api.json index 82251b51a7..f3bd2ea22c 100644 --- a/etc/api/discovery/v1/discovery-api.json +++ b/etc/api/discovery/v1/discovery-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7WOjGNdCOs-QAXk7eVA9E1_GpoI\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Pyg0A4J33Dq212hoe9BYpSm0dl4\"", "discoveryVersion": "v1", "id": "discovery:v1", "name": "discovery", "version": "v1", "title": "APIs Discovery Service", - "description": "Lets you discover information about other Google APIs, such as what APIs are available, the resource and method details for each API.", + "description": "Provides information about other Google APIs, such as what APIs are available, the resource, and method details for each API.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/dns/v1/dns-api.json b/etc/api/dns/v1/dns-api.json index d66f09aad5..b7b6d29430 100644 --- a/etc/api/dns/v1/dns-api.json +++ b/etc/api/dns/v1/dns-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/HxGEJa_pLOiBZuN-UORZOmZuoc4\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/NTmeGmyi7CpprG1xT8MLokjrTP8\"", "discoveryVersion": "v1", "id": "dns:v1", "name": "dns", "version": "v1", - "revision": "20160224", + "revision": "20160825", "title": "Google Cloud DNS API", - "description": "The Google Cloud DNS API provides services for configuring and serving authoritative DNS records.", + "description": "Configures and serves authoritative DNS records.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -183,7 +183,7 @@ }, "name": { "type": "string", - "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-32 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." + "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." }, "nameServerSet": { "type": "string", diff --git a/etc/api/dns/v2beta1/dns-api.json b/etc/api/dns/v2beta1/dns-api.json new file mode 100644 index 0000000000..79f5686e76 --- /dev/null +++ b/etc/api/dns/v2beta1/dns-api.json @@ -0,0 +1,1406 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/PQ71CNC0zbDU3bik-BkiSGiNtVU\"", + "discoveryVersion": "v1", + "id": "dns:v2beta1", + "name": "dns", + "version": "v2beta1", + "revision": "20160825", + "title": "Google Cloud DNS API", + "description": "Configures and serves authoritative DNS records.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "documentationLink": "https://developers.google.com/cloud-dns", + "protocol": "rest", + "baseUrl": "https://www.googleapis.com/dns/v2beta1/projects/", + "basePath": "/dns/v2beta1/projects/", + "rootUrl": "https://www.googleapis.com/", + "servicePath": "dns/v2beta1/projects/", + "batchPath": "batch", + "parameters": { + "alt": { + "type": "string", + "description": "Data format for the response.", + "default": "json", + "enum": [ + "json" + ], + "enumDescriptions": [ + "Responses with Content-Type of application/json" + ], + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", + "location": "query" + }, + "userIp": { + "type": "string", + "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", + "location": "query" + } + }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/cloud-platform.read-only": { + "description": "View your data across Google Cloud Platform services" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readonly": { + "description": "View your DNS records hosted by Google Cloud DNS" + }, + "https://www.googleapis.com/auth/ndev.clouddns.readwrite": { + "description": "View and manage your DNS records hosted by Google Cloud DNS" + } + } + } + }, + "schemas": { + "Change": { + "id": "Change", + "type": "object", + "description": "An atomic update to a collection of ResourceRecordSets.", + "properties": { + "additions": { + "type": "array", + "description": "Which ResourceRecordSets to add?", + "items": { + "$ref": "ResourceRecordSet" + } + }, + "deletions": { + "type": "array", + "description": "Which ResourceRecordSets to remove? Must match existing data exactly.", + "items": { + "$ref": "ResourceRecordSet" + } + }, + "id": { + "type": "string", + "description": "Unique identifier for the resource; defined by the server (output only)." + }, + "isServing": { + "type": "boolean", + "description": "If the DNS queries for the zone will be served." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#change\".", + "default": "dns#change" + }, + "startTime": { + "type": "string", + "description": "The time that this operation was started by the server (output only). This is in RFC3339 text format." + }, + "status": { + "type": "string", + "description": "Status of the operation (output only).", + "enum": [ + "DONE", + "PENDING" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "ChangesListResponse": { + "id": "ChangesListResponse", + "type": "object", + "description": "The response to a request to enumerate Changes to a ResourceRecordSets collection.", + "properties": { + "changes": { + "type": "array", + "description": "The requested changes.", + "items": { + "$ref": "Change" + } + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "dns#changesListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." + } + } + }, + "DnsKey": { + "id": "DnsKey", + "type": "object", + "description": "A DNSSEC key pair.", + "properties": { + "algorithm": { + "type": "string", + "description": "String mnemonic specifying the DNSSEC algorithm of this key. Immutable after creation time.", + "enum": [ + "ECDSAP256SHA256", + "ECDSAP384SHA384", + "RSASHA1", + "RSASHA256", + "RSASHA512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "creationTime": { + "type": "string", + "description": "The time that this resource was created in the control plane. This is in RFC3339 text format. Output only." + }, + "description": { + "type": "string", + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the resource's function." + }, + "digests": { + "type": "array", + "description": "Cryptographic hashes of the DNSKEY resource record associated with this DnsKey. These digests are needed to construct a DS record that points at this DNS key. Output only.", + "items": { + "$ref": "DnsKeyDigest" + } + }, + "id": { + "type": "string", + "description": "Unique identifier for the resource; defined by the server (output only)." + }, + "isActive": { + "type": "boolean", + "description": "Active keys will be used to sign subsequent changes to the ManagedZone. Inactive keys will still be present as DNSKEY Resource Records for the use of resolvers validating existing signatures." + }, + "keyLength": { + "type": "integer", + "description": "Length of the key in bits. Specified at creation time then immutable.", + "format": "uint32" + }, + "keyTag": { + "type": "integer", + "description": "The key tag is a non-cryptographic hash of the a DNSKEY resource record associated with this DnsKey. The key tag can be used to identify a DNSKEY more quickly (but it is not a unique identifier). In particular, the key tag is used in a parent zone's DS record to point at the DNSKEY in this child ManagedZone. The key tag is a number in the range [0, 65535] and the algorithm to calculate it is specified in RFC4034 Appendix B. Output only.", + "format": "int32" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKey\".", + "default": "dns#dnsKey" + }, + "publicKey": { + "type": "string", + "description": "Base64 encoded public half of this key. Output only." + }, + "type": { + "type": "string", + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types. Immutable after creation time.", + "enum": [ + "KEY_SIGNING", + "ZONE_SIGNING" + ], + "enumDescriptions": [ + "", + "" + ] + } + } + }, + "DnsKeyDigest": { + "id": "DnsKeyDigest", + "type": "object", + "properties": { + "digest": { + "type": "string", + "description": "The base-16 encoded bytes of this digest. Suitable for use in a DS resource record." + }, + "type": { + "type": "string", + "description": "Specifies the algorithm used to calculate this digest.", + "enum": [ + "SHA1", + "SHA256", + "SHA384" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "DnsKeySpec": { + "id": "DnsKeySpec", + "type": "object", + "description": "Parameters for DnsKey key generation. Used for generating initial keys for a new ManagedZone and as default when adding a new DnsKey.", + "properties": { + "algorithm": { + "type": "string", + "description": "String mnemonic specifying the DNSSEC algorithm of this key.", + "enum": [ + "ECDSAP256SHA256", + "ECDSAP384SHA384", + "RSASHA1", + "RSASHA256", + "RSASHA512" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "keyLength": { + "type": "integer", + "description": "Length of the keys in bits.", + "format": "uint32" + }, + "keyType": { + "type": "string", + "description": "One of \"KEY_SIGNING\" or \"ZONE_SIGNING\". Keys of type KEY_SIGNING have the Secure Entry Point flag set and, when active, will be used to sign only resource record sets of type DNSKEY. Otherwise, the Secure Entry Point flag will be cleared and this key will be used to sign only resource record sets of other types.", + "enum": [ + "KEY_SIGNING", + "ZONE_SIGNING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#dnsKeySpec\".", + "default": "dns#dnsKeySpec" + } + } + }, + "DnsKeysListResponse": { + "id": "DnsKeysListResponse", + "type": "object", + "description": "The response to a request to enumerate DnsKeys in a ManagedZone.", + "properties": { + "dnsKeys": { + "type": "array", + "description": "The requested resources.", + "items": { + "$ref": "DnsKey" + } + }, + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "dns#dnsKeysListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a \"snapshot\" of collections larger than the maximum page size." + } + } + }, + "ManagedZone": { + "id": "ManagedZone", + "type": "object", + "description": "A zone is a subtree of the DNS namespace under one administrative responsibility. A ManagedZone is a resource that represents a DNS zone hosted by the Cloud DNS service.", + "properties": { + "creationTime": { + "type": "string", + "description": "The time that this resource was created on the server. This is in RFC3339 text format. Output only." + }, + "description": { + "type": "string", + "description": "A mutable string of at most 1024 characters associated with this resource for the user's convenience. Has no effect on the managed zone's function." + }, + "dnsName": { + "type": "string", + "description": "The DNS name of this managed zone, for instance \"example.com.\"." + }, + "dnssecConfig": { + "$ref": "ManagedZoneDnsSecConfig", + "description": "DNSSEC configuration." + }, + "id": { + "type": "string", + "description": "Unique identifier for the resource; defined by the server (output only)", + "format": "uint64" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZone\".", + "default": "dns#managedZone" + }, + "name": { + "type": "string", + "description": "User assigned name for this resource. Must be unique within the project. The name must be 1-63 characters long, must begin with a letter, end with a letter or digit, and only contain lowercase letters, digits or dashes." + }, + "nameServerSet": { + "type": "string", + "description": "Optionally specifies the NameServerSet for this ManagedZone. A NameServerSet is a set of DNS name servers that all host the same ManagedZones. Most users will leave this field unset." + }, + "nameServers": { + "type": "array", + "description": "Delegate your managed_zone to these virtual name servers; defined by the server (output only)", + "items": { + "type": "string" + } + } + } + }, + "ManagedZoneDnsSecConfig": { + "id": "ManagedZoneDnsSecConfig", + "type": "object", + "properties": { + "defaultKeySpecs": { + "type": "array", + "description": "Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. Output only while state is not OFF.", + "items": { + "$ref": "DnsKeySpec" + } + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#managedZoneDnsSecConfig\".", + "default": "dns#managedZoneDnsSecConfig" + }, + "nonExistence": { + "type": "string", + "description": "Specifies the mechanism used to provide authenticated denial-of-existence responses. Output only while state is not OFF.", + "enum": [ + "NSEC", + "NSEC3" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "state": { + "type": "string", + "description": "Specifies whether DNSSEC is enabled, and what mode it is in.", + "enum": [ + "OFF", + "ON", + "TRANSFER" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "ManagedZoneOperationsListResponse": { + "id": "ManagedZoneOperationsListResponse", + "type": "object", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "dns#managedZoneOperationsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + }, + "operations": { + "type": "array", + "description": "The operation resources.", + "items": { + "$ref": "Operation" + } + } + } + }, + "ManagedZonesDeleteResponse": { + "id": "ManagedZonesDeleteResponse", + "type": "object", + "properties": { + "header": { + "$ref": "ResponseHeader" + } + } + }, + "ManagedZonesListResponse": { + "id": "ManagedZonesListResponse", + "type": "object", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "dns#managedZonesListResponse" + }, + "managedZones": { + "type": "array", + "description": "The managed zone resources.", + "items": { + "$ref": "ManagedZone" + } + }, + "nextPageToken": { + "type": "string", + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your page token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + } + } + }, + "Operation": { + "id": "Operation", + "type": "object", + "description": "An operation represents a successful mutation performed on a Cloud DNS resource. Operations provide: - An audit log of server resource mutations. - A way to recover/retry API calls in the case where the response is never received by the caller. Use the caller specified client_operation_id.", + "properties": { + "dnsKeyContext": { + "$ref": "OperationDnsKeyContext", + "description": "Only populated if the operation targeted a DnsKey (output only)." + }, + "id": { + "type": "string", + "description": "Unique identifier for the resource. This is the client_operation_id if the client specified it when the mutation was initiated, otherwise, it is generated by the server. The name must be 1-63 characters long and match the regular expression [-a-z0-9]? (output only)" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#operation\".", + "default": "dns#operation" + }, + "startTime": { + "type": "string", + "description": "The time that this operation was started by the server. This is in RFC3339 text format (output only)." + }, + "status": { + "type": "string", + "description": "Status of the operation. Can be one of the following: \"PENDING\" or \"DONE\" (output only).", + "enum": [ + "DONE", + "PENDING" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "type": { + "type": "string", + "description": "Type of the operation. Operations include insert, update, and delete (output only)." + }, + "user": { + "type": "string", + "description": "User who requested the operation, for example: user@example.com. cloud-dns-system for operations automatically done by the system. (output only)" + }, + "zoneContext": { + "$ref": "OperationManagedZoneContext", + "description": "Only populated if the operation targeted a ManagedZone (output only)." + } + } + }, + "OperationDnsKeyContext": { + "id": "OperationDnsKeyContext", + "type": "object", + "properties": { + "newValue": { + "$ref": "DnsKey", + "description": "The post-operation DnsKey resource." + }, + "oldValue": { + "$ref": "DnsKey", + "description": "The pre-operation DnsKey resource." + } + } + }, + "OperationManagedZoneContext": { + "id": "OperationManagedZoneContext", + "type": "object", + "properties": { + "newValue": { + "$ref": "ManagedZone", + "description": "The post-operation ManagedZone resource." + }, + "oldValue": { + "$ref": "ManagedZone", + "description": "The pre-operation ManagedZone resource." + } + } + }, + "Project": { + "id": "Project", + "type": "object", + "description": "A project resource. The project is a top level container for resources including Cloud DNS ManagedZones. Projects can be created only in the APIs console.", + "properties": { + "id": { + "type": "string", + "description": "User assigned unique identifier for the resource (output only)." + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#project\".", + "default": "dns#project" + }, + "number": { + "type": "string", + "description": "Unique numeric identifier for the resource; defined by the server (output only).", + "format": "uint64" + }, + "quota": { + "$ref": "Quota", + "description": "Quotas assigned to this project (output only)." + } + } + }, + "Quota": { + "id": "Quota", + "type": "object", + "description": "Limits associated with a Project.", + "properties": { + "dnsKeysPerManagedZone": { + "type": "integer", + "description": "Maximum allowed number of DnsKeys per ManagedZone.", + "format": "int32" + }, + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#quota\".", + "default": "dns#quota" + }, + "managedZones": { + "type": "integer", + "description": "Maximum allowed number of managed zones in the project.", + "format": "int32" + }, + "resourceRecordsPerRrset": { + "type": "integer", + "description": "Maximum allowed number of ResourceRecords per ResourceRecordSet.", + "format": "int32" + }, + "rrsetAdditionsPerChange": { + "type": "integer", + "description": "Maximum allowed number of ResourceRecordSets to add per ChangesCreateRequest.", + "format": "int32" + }, + "rrsetDeletionsPerChange": { + "type": "integer", + "description": "Maximum allowed number of ResourceRecordSets to delete per ChangesCreateRequest.", + "format": "int32" + }, + "rrsetsPerManagedZone": { + "type": "integer", + "description": "Maximum allowed number of ResourceRecordSets per zone in the project.", + "format": "int32" + }, + "totalRrdataSizePerChange": { + "type": "integer", + "description": "Maximum allowed size for total rrdata in one ChangesCreateRequest in bytes.", + "format": "int32" + }, + "whitelistedKeySpecs": { + "type": "array", + "description": "DNSSEC algorithm and key length types that can be used for DnsKeys.", + "items": { + "$ref": "DnsKeySpec" + } + } + } + }, + "ResourceRecordSet": { + "id": "ResourceRecordSet", + "type": "object", + "description": "A unit of data that will be returned by the DNS servers.", + "properties": { + "kind": { + "type": "string", + "description": "Identifies what kind of resource this is. Value: the fixed string \"dns#resourceRecordSet\".", + "default": "dns#resourceRecordSet" + }, + "name": { + "type": "string", + "description": "For example, www.example.com." + }, + "rrdatas": { + "type": "array", + "description": "As defined in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).", + "items": { + "type": "string" + } + }, + "signatureRrdatas": { + "type": "array", + "description": "As defined in RFC 4034 (section 3.2).", + "items": { + "type": "string" + } + }, + "ttl": { + "type": "integer", + "description": "Number of seconds that this ResourceRecordSet can be cached by resolvers.", + "format": "int32" + }, + "type": { + "type": "string", + "description": "The identifier of a supported record type, for example, A, AAAA, MX, TXT, and so on." + } + } + }, + "ResourceRecordSetsListResponse": { + "id": "ResourceRecordSetsListResponse", + "type": "object", + "properties": { + "header": { + "$ref": "ResponseHeader" + }, + "kind": { + "type": "string", + "description": "Type of resource.", + "default": "dns#resourceRecordSetsListResponse" + }, + "nextPageToken": { + "type": "string", + "description": "The presence of this field indicates that there exist more results following your last page of results in pagination order. To fetch them, make another list request using this value as your pagination token.\n\nIn this way you can retrieve the complete contents of even very large collections one page at a time. However, if the contents of the collection change between the first and last paginated list request, the set of all elements returned will be an inconsistent view of the collection. There is no way to retrieve a consistent snapshot of a collection larger than the maximum page size." + }, + "rrsets": { + "type": "array", + "description": "The resource record set resources.", + "items": { + "$ref": "ResourceRecordSet" + } + } + } + }, + "ResponseHeader": { + "id": "ResponseHeader", + "type": "object", + "description": "Elements common to every response.", + "properties": { + "operationId": { + "type": "string", + "description": "For mutating operation requests that completed successfully. This is the client_operation_id if the client specified it, otherwise it is generated by the server (output only)." + } + } + } + }, + "resources": { + "changes": { + "methods": { + "create": { + "id": "dns.changes.create", + "path": "{project}/managedZones/{managedZone}/changes", + "httpMethod": "POST", + "description": "Atomically update the ResourceRecordSet collection.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "request": { + "$ref": "Change" + }, + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "id": "dns.changes.get", + "path": "{project}/managedZones/{managedZone}/changes/{changeId}", + "httpMethod": "GET", + "description": "Fetch the representation of an existing Change.", + "parameters": { + "changeId": { + "type": "string", + "description": "The identifier of the requested change, from a previous ResourceRecordSetsChangeResponse.", + "required": true, + "location": "path" + }, + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone", + "changeId" + ], + "response": { + "$ref": "Change" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "id": "dns.changes.list", + "path": "{project}/managedZones/{managedZone}/changes", + "httpMethod": "GET", + "description": "Enumerate Changes to a ResourceRecordSet collection.", + "parameters": { + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + }, + "sortBy": { + "type": "string", + "description": "Sorting criterion. The only supported value is change sequence.", + "default": "CHANGE_SEQUENCE", + "enum": [ + "CHANGE_SEQUENCE" + ], + "enumDescriptions": [ + "" + ], + "location": "query" + }, + "sortOrder": { + "type": "string", + "description": "Sorting order direction: 'ascending' or 'descending'.", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "ChangesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "dnskeys": { + "methods": { + "get": { + "id": "dns.dnskeys.get", + "path": "{project}/managedZones/{managedZone}/dnsKeys/{dnsKeyId}", + "httpMethod": "GET", + "description": "Fetch the representation of an existing DnsKey.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "digestType": { + "type": "string", + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query" + }, + "dnsKeyId": { + "type": "string", + "description": "The identifier of the requested DnsKey.", + "required": true, + "location": "path" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone", + "dnsKeyId" + ], + "response": { + "$ref": "DnsKey" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "id": "dns.dnskeys.list", + "path": "{project}/managedZones/{managedZone}/dnsKeys", + "httpMethod": "GET", + "description": "Enumerate DnsKeys to a ResourceRecordSet collection.", + "parameters": { + "digestType": { + "type": "string", + "description": "An optional comma-separated list of digest types to compute and display for key signing keys. If omitted, the recommended digest type will be computed and displayed.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "DnsKeysListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "managedZoneOperations": { + "methods": { + "get": { + "id": "dns.managedZoneOperations.get", + "path": "{project}/managedZones/{managedZone}/operations/{operation}", + "httpMethod": "GET", + "description": "Fetch the representation of an existing Operation.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request.", + "required": true, + "location": "path" + }, + "operation": { + "type": "string", + "description": "Identifies the operation addressed by this request.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone", + "operation" + ], + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "id": "dns.managedZoneOperations.list", + "path": "{project}/managedZones/{managedZone}/operations", + "httpMethod": "GET", + "description": "Enumerate Operations for the given ManagedZone.", + "parameters": { + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + }, + "sortBy": { + "type": "string", + "description": "Sorting criterion. The only supported values are START_TIME and ID.", + "default": "START_TIME", + "enum": [ + "ID", + "START_TIME" + ], + "enumDescriptions": [ + "", + "" + ], + "location": "query" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "ManagedZoneOperationsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "managedZones": { + "methods": { + "create": { + "id": "dns.managedZones.create", + "path": "{project}/managedZones", + "httpMethod": "POST", + "description": "Create a new ManagedZone.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "delete": { + "id": "dns.managedZones.delete", + "path": "{project}/managedZones/{managedZone}", + "httpMethod": "DELETE", + "description": "Delete a previously created ManagedZone.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "ManagedZonesDeleteResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "get": { + "id": "dns.managedZones.get", + "path": "{project}/managedZones/{managedZone}", + "httpMethod": "GET", + "description": "Fetch the representation of an existing ManagedZone.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "ManagedZone" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "list": { + "id": "dns.managedZones.list", + "path": "{project}/managedZones", + "httpMethod": "GET", + "description": "Enumerate ManagedZones that have been created but not yet deleted.", + "parameters": { + "dnsName": { + "type": "string", + "description": "Restricts the list to return only zones with this domain name.", + "location": "query" + }, + "maxResults": { + "type": "integer", + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "ManagedZonesListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "patch": { + "id": "dns.managedZones.patch", + "path": "{project}/managedZones/{managedZone}", + "httpMethod": "PATCH", + "description": "Update an existing ManagedZone. This method supports patch semantics.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + }, + "update": { + "id": "dns.managedZones.update", + "path": "{project}/managedZones/{managedZone}", + "httpMethod": "PUT", + "description": "Update an existing ManagedZone.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "request": { + "$ref": "ManagedZone" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "projects": { + "methods": { + "get": { + "id": "dns.projects.get", + "path": "{project}", + "httpMethod": "GET", + "description": "Fetch the representation of an existing Project.", + "parameters": { + "clientOperationId": { + "type": "string", + "description": "For mutating operation requests only. An optional identifier specified by the client. Must be unique for operation resources in the Operations collection.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project" + ], + "response": { + "$ref": "Project" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + }, + "resourceRecordSets": { + "methods": { + "list": { + "id": "dns.resourceRecordSets.list", + "path": "{project}/managedZones/{managedZone}/rrsets", + "httpMethod": "GET", + "description": "Enumerate ResourceRecordSets that have been created but not yet deleted.", + "parameters": { + "managedZone": { + "type": "string", + "description": "Identifies the managed zone addressed by this request. Can be the managed zone name or id.", + "required": true, + "location": "path" + }, + "maxResults": { + "type": "integer", + "description": "Optional. Maximum number of results to be returned. If unspecified, the server will decide how many results to return.", + "format": "int32", + "location": "query" + }, + "name": { + "type": "string", + "description": "Restricts the list to return only records with this fully qualified domain name.", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "Optional. A tag returned by a previous list request that was truncated. Use this parameter to continue a previous list request.", + "location": "query" + }, + "project": { + "type": "string", + "description": "Identifies the project addressed by this request.", + "required": true, + "location": "path" + }, + "type": { + "type": "string", + "description": "Restricts the list to return only records of this type. If present, the \"name\" parameter must also be present.", + "location": "query" + } + }, + "parameterOrder": [ + "project", + "managedZone" + ], + "response": { + "$ref": "ResourceRecordSetsListResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/cloud-platform.read-only", + "https://www.googleapis.com/auth/ndev.clouddns.readonly", + "https://www.googleapis.com/auth/ndev.clouddns.readwrite" + ] + } + } + } + } +} diff --git a/etc/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json b/etc/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json index 035f8e94c8..e2db49028e 100644 --- a/etc/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json +++ b/etc/api/doubleclickbidmanager/v1/doubleclickbidmanager-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/KhQlHpyUs8rKakqcULR3lepd_Vc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/APNHThgbF23N6qKTgbCZClI5UfQ\"", "discoveryVersion": "v1", "id": "doubleclickbidmanager:v1", "name": "doubleclickbidmanager", "canonicalName": "DoubleClick Bid Manager", "version": "v1", - "revision": "20160225", + "revision": "20160608", "title": "DoubleClick Bid Manager API", "description": "API for viewing and managing your reports in DoubleClick Bid Manager.", "ownerDomain": "google.com", @@ -206,11 +206,33 @@ "FILTER_TRUEVIEW_AD_GROUP_AD_ID", "FILTER_TRUEVIEW_AD_GROUP_ID", "FILTER_TRUEVIEW_AGE", + "FILTER_TRUEVIEW_CATEGORY", + "FILTER_TRUEVIEW_CITY", "FILTER_TRUEVIEW_CONVERSION_TYPE", + "FILTER_TRUEVIEW_COUNTRY", + "FILTER_TRUEVIEW_CUSTOM_AFFINITY", + "FILTER_TRUEVIEW_DMA", "FILTER_TRUEVIEW_GENDER", + "FILTER_TRUEVIEW_IAR_AGE", + "FILTER_TRUEVIEW_IAR_CATEGORY", + "FILTER_TRUEVIEW_IAR_CITY", + "FILTER_TRUEVIEW_IAR_COUNTRY", + "FILTER_TRUEVIEW_IAR_GENDER", + "FILTER_TRUEVIEW_IAR_INTEREST", + "FILTER_TRUEVIEW_IAR_LANGUAGE", + "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", + "FILTER_TRUEVIEW_IAR_REGION", + "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", + "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", + "FILTER_TRUEVIEW_IAR_ZIPCODE", "FILTER_TRUEVIEW_INTEREST", + "FILTER_TRUEVIEW_KEYWORD", "FILTER_TRUEVIEW_PARENTAL_STATUS", + "FILTER_TRUEVIEW_PLACEMENT", + "FILTER_TRUEVIEW_REGION", "FILTER_TRUEVIEW_REMARKETING_LIST", + "FILTER_TRUEVIEW_URL", + "FILTER_TRUEVIEW_ZIPCODE", "FILTER_UNKNOWN", "FILTER_USER_LIST", "FILTER_USER_LIST_FIRST_PARTY", @@ -321,6 +343,28 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ] }, @@ -509,11 +553,33 @@ "FILTER_TRUEVIEW_AD_GROUP_AD_ID", "FILTER_TRUEVIEW_AD_GROUP_ID", "FILTER_TRUEVIEW_AGE", + "FILTER_TRUEVIEW_CATEGORY", + "FILTER_TRUEVIEW_CITY", "FILTER_TRUEVIEW_CONVERSION_TYPE", + "FILTER_TRUEVIEW_COUNTRY", + "FILTER_TRUEVIEW_CUSTOM_AFFINITY", + "FILTER_TRUEVIEW_DMA", "FILTER_TRUEVIEW_GENDER", + "FILTER_TRUEVIEW_IAR_AGE", + "FILTER_TRUEVIEW_IAR_CATEGORY", + "FILTER_TRUEVIEW_IAR_CITY", + "FILTER_TRUEVIEW_IAR_COUNTRY", + "FILTER_TRUEVIEW_IAR_GENDER", + "FILTER_TRUEVIEW_IAR_INTEREST", + "FILTER_TRUEVIEW_IAR_LANGUAGE", + "FILTER_TRUEVIEW_IAR_PARENTAL_STATUS", + "FILTER_TRUEVIEW_IAR_REGION", + "FILTER_TRUEVIEW_IAR_REMARKETING_LIST", + "FILTER_TRUEVIEW_IAR_TIME_OF_DAY", + "FILTER_TRUEVIEW_IAR_ZIPCODE", "FILTER_TRUEVIEW_INTEREST", + "FILTER_TRUEVIEW_KEYWORD", "FILTER_TRUEVIEW_PARENTAL_STATUS", + "FILTER_TRUEVIEW_PLACEMENT", + "FILTER_TRUEVIEW_REGION", "FILTER_TRUEVIEW_REMARKETING_LIST", + "FILTER_TRUEVIEW_URL", + "FILTER_TRUEVIEW_ZIPCODE", "FILTER_UNKNOWN", "FILTER_USER_LIST", "FILTER_USER_LIST_FIRST_PARTY", @@ -624,6 +690,28 @@ "", "", "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", "" ] } @@ -806,6 +894,7 @@ "METRIC_PROFIT_VIEWABLE_ECPM_ADVERTISER", "METRIC_PROFIT_VIEWABLE_ECPM_PARTNER", "METRIC_PROFIT_VIEWABLE_ECPM_USD", + "METRIC_REACH_COOKIE_REACH", "METRIC_REVENUE_ADVERTISER", "METRIC_REVENUE_ECPAPC_ADVERTISER", "METRIC_REVENUE_ECPAPC_PARTNER", @@ -867,6 +956,9 @@ "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_ADVERTISER", "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_PARTNER", "METRIC_TOTAL_MEDIA_COST_VIEWABLE_ECPM_USD", + "METRIC_TRUEVIEW_AVERAGE_CPE_ADVERTISER", + "METRIC_TRUEVIEW_AVERAGE_CPE_PARTNER", + "METRIC_TRUEVIEW_AVERAGE_CPE_USD", "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_ADVERTISER", "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_PARTNER", "METRIC_TRUEVIEW_CONVERSION_COST_MANY_PER_VIEW_USD", @@ -892,6 +984,8 @@ "METRIC_TRUEVIEW_EARNED_SHARES", "METRIC_TRUEVIEW_EARNED_SUBSCRIBERS", "METRIC_TRUEVIEW_EARNED_VIEWS", + "METRIC_TRUEVIEW_ENGAGEMENTS", + "METRIC_TRUEVIEW_ENGAGEMENT_RATE", "METRIC_TRUEVIEW_IMPRESSION_SHARE", "METRIC_TRUEVIEW_LOST_IS_BUDGET", "METRIC_TRUEVIEW_LOST_IS_RANK", @@ -1183,6 +1277,12 @@ "", "", "", + "", + "", + "", + "", + "", + "", "" ] } @@ -1325,6 +1425,7 @@ "PREVIOUS_WEEK", "PREVIOUS_YEAR", "QUARTER_TO_DATE", + "TYPE_NOT_SUPPORTED", "WEEK_TO_DATE", "YEAR_TO_DATE" ], @@ -1346,6 +1447,7 @@ "", "", "", + "", "" ] }, @@ -1664,6 +1766,7 @@ "PREVIOUS_WEEK", "PREVIOUS_YEAR", "QUARTER_TO_DATE", + "TYPE_NOT_SUPPORTED", "WEEK_TO_DATE", "YEAR_TO_DATE" ], @@ -1685,6 +1788,7 @@ "", "", "", + "", "" ] }, diff --git a/etc/api/doubleclicksearch/v2/doubleclicksearch-api.json b/etc/api/doubleclicksearch/v2/doubleclicksearch-api.json index b168848ea1..d7f678cb62 100644 --- a/etc/api/doubleclicksearch/v2/doubleclicksearch-api.json +++ b/etc/api/doubleclicksearch/v2/doubleclicksearch-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/mQph4Sf_SMRIA7kCek-g2XOXzv4\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/3EpE7K-TIr-3D232nGx3ph-P87g\"", "discoveryVersion": "v1", "id": "doubleclicksearch:v2", "name": "doubleclicksearch", "version": "v2", - "revision": "20160401", + "revision": "20160831", "title": "DoubleClick Search API", "description": "Reports and modifies your advertising data in DoubleClick Search (for example, campaigns, ad groups, keywords, and conversions).", "ownerDomain": "google.com", diff --git a/etc/api/drive/v2/drive-api.json b/etc/api/drive/v2/drive-api.json index eeadb04d6b..e2c1a71f14 100644 --- a/etc/api/drive/v2/drive-api.json +++ b/etc/api/drive/v2/drive-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/GTDpaocQE9NwB0Qlbrx8nJ-e_1c\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/PDe69Eq2j9-xpzST6tMQ5MRPx_I\"", "discoveryVersion": "v1", "id": "drive:v2", "name": "drive", "version": "v2", - "revision": "20160331", + "revision": "20160901", "title": "Drive API", - "description": "The API to interact with Drive.", + "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -299,7 +299,7 @@ }, "remainingChangeIds": { "type": "string", - "description": "The number of remaining change ids.", + "description": "The number of remaining change ids, limited to no more than 2500.", "format": "int64" }, "rootFolderId": { @@ -1469,9 +1469,14 @@ "type": "string", "description": "The ETag of the permission." }, + "expirationDate": { + "type": "string", + "description": "The time at which this permission will expire (RFC 3339 date-time).", + "format": "date-time" + }, "id": { "type": "string", - "description": "The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified." + "description": "The ID of the user this permission refers to, and identical to the permissionId in the About and Files resources. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type anyone, in which case both id and value are ignored." }, "kind": { "type": "string", @@ -1510,7 +1515,7 @@ }, "value": { "type": "string", - "description": "The email address or domain name for the entity. This is used during inserts and is not populated in responses. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified." + "description": "The email address or domain name for the entity. This is used during inserts and is not populated in responses. When making a drive.permissions.insert request, exactly one of the id or value fields must be specified unless the permission type anyone, in which case both id and value are ignored." }, "withLink": { "type": "boolean", @@ -3526,6 +3531,12 @@ "required": true, "location": "path" }, + "removeExpiration": { + "type": "boolean", + "description": "Whether to remove the expiration date.", + "default": "false", + "location": "query" + }, "transferOwnership": { "type": "boolean", "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", @@ -3566,6 +3577,12 @@ "required": true, "location": "path" }, + "removeExpiration": { + "type": "boolean", + "description": "Whether to remove the expiration date.", + "default": "false", + "location": "query" + }, "transferOwnership": { "type": "boolean", "description": "Whether changing a role to 'owner' downgrades the current owners to writers. Does nothing if the specified role is not 'owner'.", diff --git a/etc/api/drive/v3/drive-api.json b/etc/api/drive/v3/drive-api.json index 4698e825b8..97afa5ed2f 100644 --- a/etc/api/drive/v3/drive-api.json +++ b/etc/api/drive/v3/drive-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Pn6xzhnOx8ChFefbzfRCBOEBh_o\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/b4mg2dvgTW9WKWXzE5c-R5m9Ggc\"", "discoveryVersion": "v1", "id": "drive:v3", "name": "drive", "version": "v3", - "revision": "20160331", + "revision": "20160901", "title": "Drive API", - "description": "The API to interact with Drive.", + "description": "Manages files in Drive including uploading, downloading, searching, detecting changes, and updating sharing permissions.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -135,7 +135,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#about.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#about\".", "default": "drive#about" }, "maxImportSizes": { @@ -198,7 +198,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#change.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#change\".", "default": "drive#change" }, "removed": { @@ -226,7 +226,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#changeList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#changeList\".", "default": "drive#changeList" }, "newStartPageToken": { @@ -334,7 +334,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#comment.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#comment\".", "default": "drive#comment" }, "modifiedTime": { @@ -383,7 +383,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#commentList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#commentList\".", "default": "drive#commentList" }, "nextPageToken": { @@ -615,7 +615,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#file.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#file\".", "default": "drive#file" }, "lastModifyingUser": { @@ -789,7 +789,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#fileList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#fileList\".", "default": "drive#fileList" }, "nextPageToken": { @@ -812,7 +812,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#generatedIds", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#generatedIds\".", "default": "drive#generatedIds" }, "space": { @@ -842,13 +842,18 @@ "type": "string", "description": "The email address of the user or group to which this permission refers." }, + "expirationTime": { + "type": "string", + "description": "The time at which this permission will expire (RFC 3339 date-time).", + "format": "date-time" + }, "id": { "type": "string", "description": "The ID of this permission. This is a unique identifier for the grantee, and is published in User resources as permissionId." }, "kind": { "type": "string", - "description": "This is always drive#permission.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permission\".", "default": "drive#permission" }, "photoLink": { @@ -882,7 +887,7 @@ "properties": { "kind": { "type": "string", - "description": "This is always drive#permissionList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#permissionList\".", "default": "drive#permissionList" }, "permissions": { @@ -935,7 +940,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#reply.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#reply\".", "default": "drive#reply" }, "modifiedTime": { @@ -952,7 +957,7 @@ "properties": { "kind": { "type": "string", - "description": "This is always drive#replyList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#replyList\".", "default": "drive#replyList" }, "nextPageToken": { @@ -983,7 +988,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#revision.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revision\".", "default": "drive#revision" }, "lastModifyingUser": { @@ -1033,7 +1038,7 @@ "properties": { "kind": { "type": "string", - "description": "This is always drive#revisionList.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#revisionList\".", "default": "drive#revisionList" }, "revisions": { @@ -1051,7 +1056,7 @@ "properties": { "kind": { "type": "string", - "description": "This is always drive#startPageToken.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#startPageToken\".", "default": "drive#startPageToken" }, "startPageToken": { @@ -1075,7 +1080,7 @@ }, "kind": { "type": "string", - "description": "This is always drive#user.", + "description": "Identifies what kind of resource this is. Value: the fixed string \"drive#user\".", "default": "drive#user" }, "me": { @@ -2034,6 +2039,12 @@ "required": true, "location": "path" }, + "removeExpiration": { + "type": "boolean", + "description": "Whether to remove the expiration date.", + "default": "false", + "location": "query" + }, "transferOwnership": { "type": "boolean", "description": "Whether to transfer ownership to the specified user and downgrade the current owner to a writer. This parameter is required as an acknowledgement of the side effect.", diff --git a/etc/api/firebaserules/v1/firebaserules-api.json b/etc/api/firebaserules/v1/firebaserules-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/fitness/v1/fitness-api.json b/etc/api/fitness/v1/fitness-api.json index 81a6b9268a..162d4687d6 100644 --- a/etc/api/fitness/v1/fitness-api.json +++ b/etc/api/fitness/v1/fitness-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/TL15SCjr77AOU2DmVX156flg8x0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/C_efOoRNuMwDVzh1-1r-3k_wkJo\"", "discoveryVersion": "v1", "id": "fitness:v1", "name": "fitness", "version": "v1", - "revision": "20151021", + "revision": "20160801", "title": "Fitness", - "description": "Google Fit API", + "description": "Stores and accesses user data in the fitness store from apps on any platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -86,6 +86,12 @@ }, "https://www.googleapis.com/auth/fitness.location.write": { "description": "View and store your location data in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.nutrition.read": { + "description": "View nutrition information in Google Fit" + }, + "https://www.googleapis.com/auth/fitness.nutrition.write": { + "description": "View and store nutrition information in Google Fit" } } } @@ -198,6 +204,37 @@ ] } }, + "filteredDataQualityStandard": { + "type": "array", + "description": "A list of acceptable data quality standards. Only data points which conform to at least one of the specified data quality standards will be returned. If the list is empty, all data points are returned.", + "items": { + "type": "string", + "enum": [ + "dataQualityBloodGlucoseIso151972003", + "dataQualityBloodGlucoseIso151972013", + "dataQualityBloodPressureAami", + "dataQualityBloodPressureBhsAA", + "dataQualityBloodPressureBhsAB", + "dataQualityBloodPressureBhsBA", + "dataQualityBloodPressureBhsBB", + "dataQualityBloodPressureEsh2002", + "dataQualityBloodPressureEsh2010", + "dataQualityUnknown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, "startTimeMillis": { "type": "string", "description": "The start of a window of time. Data that intersects with this time window will be aggregated. The time is in milliseconds since epoch, inclusive.", @@ -226,7 +263,7 @@ "Application": { "id": "Application", "type": "object", - "description": "See: google3/java/com/google/android/apps/heart/platform/api/Application.java", + "description": "", "properties": { "detailsUrl": { "type": "string", @@ -287,6 +324,36 @@ "type": "string", "description": "Specifies that result buckets aggregate data by exactly durationMillis time frames. Time frames that contain no data will be included in the response with an empty dataset.", "format": "int64" + }, + "period": { + "$ref": "BucketByTimePeriod" + } + } + }, + "BucketByTimePeriod": { + "id": "BucketByTimePeriod", + "type": "object", + "properties": { + "timeZoneId": { + "type": "string", + "description": "org.joda.timezone.DateTimeZone" + }, + "type": { + "type": "string", + "enum": [ + "day", + "month", + "week" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "value": { + "type": "integer", + "format": "int32" } } }, @@ -372,6 +439,37 @@ ] } }, + "dataQualityStandard": { + "type": "array", + "description": "", + "items": { + "type": "string", + "enum": [ + "dataQualityBloodGlucoseIso151972003", + "dataQualityBloodGlucoseIso151972013", + "dataQualityBloodPressureAami", + "dataQualityBloodPressureBhsAA", + "dataQualityBloodPressureBhsAB", + "dataQualityBloodPressureBhsBA", + "dataQualityBloodPressureBhsBB", + "dataQualityBloodPressureEsh2002", + "dataQualityBloodPressureEsh2010", + "dataQualityUnknown" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, "dataStreamId": { "type": "string", "description": "A unique identifier for the data stream produced by this data source. The identifier includes:\n\n \n- The physical device's manufacturer, model, and serial number (UID). \n- The application's package name or name. Package name is used when the data source was created by an Android application. The developer project number is used when the data source was created by a REST client. \n- The data source's type. \n- The data source's stream name. Note that not all attributes of the data source are used as part of the stream identifier. In particular, the version of the hardware/the application isn't used. This allows us to preserve the same stream through version updates. This also means that two DataSource objects may represent the same data stream even if they're not equal.\n\nThe exact format of the data stream ID created by an Android application is: type:dataType.name:application.packageName:device.manufacturer:device.model:device.uid:dataStreamName \n\nThe exact format of the data stream ID created by a REST client is: type:dataType.name:developer project number:device.manufacturer:device.model:device.uid:dataStreamName \n\nWhen any of the optional fields that comprise of the data stream ID are blank, they will be omitted from the data stream ID. The minnimum viable data stream ID would be: type:dataType.name:developer project number\n\nFinally, the developer project number is obfuscated when read by any REST or Android client that did not create the data source. Only the data source creator will see the developer project number in clear and normal form.", @@ -432,7 +530,7 @@ "DataType": { "id": "DataType", "type": "object", - "description": "See: google3/java/com/google/android/apps/heart/platform/api/DataType.java", + "description": "", "properties": { "field": { "type": "array", @@ -589,6 +687,7 @@ "description": "A constant representing the type of the device.", "enum": [ "chestStrap", + "headMounted", "phone", "scale", "tablet", @@ -601,6 +700,7 @@ "", "", "", + "", "" ], "annotations": { @@ -830,14 +930,15 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "delete": { "id": "fitness.users.dataSources.delete", "path": "{userId}/dataSources/{dataSourceId}", "httpMethod": "DELETE", - "description": "Delete the data source if there are no datapoints associated with it", + "description": "Deletes the specified data source. The request will fail if the data source contains any data points.", "parameters": { "dataSourceId": { "type": "string", @@ -862,14 +963,15 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "get": { "id": "fitness.users.dataSources.get", "path": "{userId}/dataSources/{dataSourceId}", "httpMethod": "GET", - "description": "Returns a data source identified by a data stream ID.", + "description": "Returns the specified data source.", "parameters": { "dataSourceId": { "type": "string", @@ -897,14 +999,16 @@ "https://www.googleapis.com/auth/fitness.body.read", "https://www.googleapis.com/auth/fitness.body.write", "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "list": { "id": "fitness.users.dataSources.list", "path": "{userId}/dataSources", "httpMethod": "GET", - "description": "Lists all data sources that are visible to the developer, using the OAuth scopes provided. The list is not exhaustive: the user may have private data sources that are only visible to other developers or calls using other scopes.", + "description": "Lists all data sources that are visible to the developer, using the OAuth scopes provided. The list is not exhaustive; the user may have private data sources that are only visible to other developers, or calls using other scopes.", "parameters": { "dataTypeName": { "type": "string", @@ -931,14 +1035,16 @@ "https://www.googleapis.com/auth/fitness.body.read", "https://www.googleapis.com/auth/fitness.body.write", "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "patch": { "id": "fitness.users.dataSources.patch", "path": "{userId}/dataSources/{dataSourceId}", "httpMethod": "PATCH", - "description": "Updates a given data source. It is an error to modify the data source's data stream ID, data type, type, stream name or device information apart from the device version. Changing these fields would require a new unique data stream ID and separate data source.\n\nData sources are identified by their data stream ID. This method supports patch semantics.", + "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId. This method supports patch semantics.", "parameters": { "dataSourceId": { "type": "string", @@ -966,14 +1072,15 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "update": { "id": "fitness.users.dataSources.update", "path": "{userId}/dataSources/{dataSourceId}", "httpMethod": "PUT", - "description": "Updates a given data source. It is an error to modify the data source's data stream ID, data type, type, stream name or device information apart from the device version. Changing these fields would require a new unique data stream ID and separate data source.\n\nData sources are identified by their data stream ID.", + "description": "Updates the specified data source. The dataStreamId, dataType, type, dataStreamName, and device properties with the exception of version, cannot be modified.\n\nData sources are identified by their dataStreamId.", "parameters": { "dataSourceId": { "type": "string", @@ -1001,7 +1108,8 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] } }, @@ -1053,7 +1161,8 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "get": { @@ -1076,7 +1185,7 @@ }, "limit": { "type": "integer", - "description": "If specified, no more than this many data points will be included in the dataset. If the there are more data points in the dataset, nextPageToken will be set in the dataset response.", + "description": "If specified, no more than this many data points will be included in the dataset. If there are more data points in the dataset, nextPageToken will be set in the dataset response.", "format": "int32", "location": "query" }, @@ -1106,7 +1215,9 @@ "https://www.googleapis.com/auth/fitness.body.read", "https://www.googleapis.com/auth/fitness.body.write", "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "patch": { @@ -1154,7 +1265,8 @@ "scopes": [ "https://www.googleapis.com/auth/fitness.activity.write", "https://www.googleapis.com/auth/fitness.body.write", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] } } @@ -1191,7 +1303,9 @@ "https://www.googleapis.com/auth/fitness.body.read", "https://www.googleapis.com/auth/fitness.body.write", "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] } } @@ -1276,7 +1390,9 @@ "https://www.googleapis.com/auth/fitness.body.read", "https://www.googleapis.com/auth/fitness.body.write", "https://www.googleapis.com/auth/fitness.location.read", - "https://www.googleapis.com/auth/fitness.location.write" + "https://www.googleapis.com/auth/fitness.location.write", + "https://www.googleapis.com/auth/fitness.nutrition.read", + "https://www.googleapis.com/auth/fitness.nutrition.write" ] }, "update": { diff --git a/etc/api/freebase/v1/freebase-api.json b/etc/api/freebase/v1/freebase-api.json index fc96ffdbbd..e69de29bb2 100644 --- a/etc/api/freebase/v1/freebase-api.json +++ b/etc/api/freebase/v1/freebase-api.json @@ -1,412 +0,0 @@ -{ - "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/MDyvJbZqDibEMeHBKb3tlDUfU-M\"", - "discoveryVersion": "v1", - "id": "freebase:v1", - "name": "freebase", - "version": "v1", - "revision": "20150728", - "title": "Freebase Search", - "description": "Find Freebase entities using textual queries and other constraints.", - "ownerDomain": "google.com", - "ownerName": "Google", - "icons": { - "x16": "https://www.google.com/images/icons/product/freebase-16.png", - "x32": "https://www.google.com/images/icons/product/freebase-32.png" - }, - "documentationLink": "https://developers.google.com/freebase/", - "protocol": "rest", - "baseUrl": "https://www.googleapis.com/freebase/v1/", - "basePath": "/freebase/v1/", - "rootUrl": "https://www.googleapis.com/", - "servicePath": "freebase/v1/", - "batchPath": "batch", - "parameters": { - "alt": { - "type": "string", - "description": "Data format for the response.", - "default": "json", - "enum": [ - "json" - ], - "enumDescriptions": [ - "Responses with Content-Type of application/json" - ], - "location": "query" - }, - "fields": { - "type": "string", - "description": "Selector specifying which fields to include in a partial response.", - "location": "query" - }, - "key": { - "type": "string", - "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", - "location": "query" - }, - "oauth_token": { - "type": "string", - "description": "OAuth 2.0 token for the current user.", - "location": "query" - }, - "prettyPrint": { - "type": "boolean", - "description": "Returns response with indentations and line breaks.", - "default": "true", - "location": "query" - }, - "quotaUser": { - "type": "string", - "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters. Overrides userIp if both are provided.", - "location": "query" - }, - "userIp": { - "type": "string", - "description": "IP address of the site where the request originates. Use this if you want to enforce per-user limits.", - "location": "query" - } - }, - "schemas": { - "ReconcileCandidate": { - "id": "ReconcileCandidate", - "type": "object", - "properties": { - "confidence": { - "type": "number", - "description": "Percentage likelihood that this candidate is the unique matching entity. Value will be between 0.0 and 1.0", - "format": "float" - }, - "lang": { - "type": "string", - "description": "Language code that candidate and notable names are displayed in." - }, - "mid": { - "type": "string", - "description": "Freebase MID of candidate entity." - }, - "name": { - "type": "string", - "description": "Freebase name of matching entity in specified language." - }, - "notable": { - "type": "object", - "description": "Type or profession the candidate is notable for.", - "properties": { - "id": { - "type": "string", - "description": "MID of notable category." - }, - "name": { - "type": "string", - "description": "Name of notable category in specified language." - } - } - } - } - }, - "ReconcileGet": { - "id": "ReconcileGet", - "type": "object", - "properties": { - "candidate": { - "type": "array", - "description": "If filled, then the listed candidates are potential matches, and such should be evaluated by a more discerning algorithm or human. The matches are ordered by confidence.", - "items": { - "$ref": "ReconcileCandidate" - } - }, - "costs": { - "type": "object", - "description": "Server costs for reconciling.", - "properties": { - "hits": { - "type": "integer", - "description": "Total number of hits found.", - "format": "int32" - }, - "ms": { - "type": "integer", - "description": "Total milliseconds spent.", - "format": "int32" - } - } - }, - "match": { - "$ref": "ReconcileCandidate", - "description": "If filled, this entity is guaranteed to match at requested confidence probability (default 99%)." - }, - "warning": { - "type": "array", - "description": "If filled, then there were recoverable problems that affected the request. For example, some of the properties were ignored because they either are not valid Freebase predicates or are not indexed for reconciliation. The candidates returned should be considered valid results, with the caveat that sections of the request were ignored as specified by the warning text.", - "items": { - "type": "object", - "properties": { - "location": { - "type": "string", - "description": "Location of warning in the request e.g. invalid predicate." - }, - "message": { - "type": "string", - "description": "Warning message to display to the user." - }, - "reason": { - "type": "string", - "description": "Code for identifying classes of warnings." - } - } - } - } - } - } - }, - "methods": { - "reconcile": { - "id": "freebase.reconcile", - "path": "reconcile", - "httpMethod": "GET", - "description": "Reconcile entities to Freebase open data.", - "parameters": { - "confidence": { - "type": "number", - "description": "Required confidence for a candidate to match. Must be between .5 and 1.0", - "default": "0.99", - "format": "float", - "minimum": "0.0", - "maximum": "1.0", - "location": "query" - }, - "kind": { - "type": "string", - "description": "Classifications of entity e.g. type, category, title.", - "repeated": true, - "location": "query" - }, - "lang": { - "type": "string", - "description": "Languages for names and values. First language is used for display. Default is 'en'.", - "repeated": true, - "location": "query" - }, - "limit": { - "type": "integer", - "description": "Maximum number of candidates to return.", - "default": "3", - "format": "int32", - "minimum": "0", - "maximum": "25", - "location": "query" - }, - "name": { - "type": "string", - "description": "Name of entity.", - "location": "query" - }, - "prop": { - "type": "string", - "description": "Property values for entity formatted as\n:", - "repeated": true, - "location": "query" - } - }, - "response": { - "$ref": "ReconcileGet" - } - }, - "search": { - "id": "freebase.search", - "path": "search", - "httpMethod": "GET", - "description": "Search Freebase open data.", - "parameters": { - "as_of_time": { - "type": "string", - "description": "A mql as_of_time value to use with mql_output queries.", - "location": "query" - }, - "callback": { - "type": "string", - "description": "JS method name for JSONP callbacks.", - "pattern": "([A-Za-z0-9_$.]|\\[|\\])+", - "location": "query" - }, - "cursor": { - "type": "integer", - "description": "The cursor value to use for the next page of results.", - "format": "int32", - "location": "query" - }, - "domain": { - "type": "string", - "description": "Restrict to topics with this Freebase domain id.", - "repeated": true, - "location": "query" - }, - "encode": { - "type": "string", - "description": "The encoding of the response. You can use this parameter to enable html encoding.", - "default": "off", - "enum": [ - "html", - "off" - ], - "enumDescriptions": [ - "Encode certain characters in the response (such as tags and ambersands) using html encoding.", - "No encoding of the response. You should not print the results directly on an web page without html-escaping the content first." - ], - "location": "query" - }, - "exact": { - "type": "boolean", - "description": "Query on exact name and keys only.", - "location": "query" - }, - "filter": { - "type": "string", - "description": "A filter to apply to the query.", - "pattern": "^\\(.*\\)$", - "repeated": true, - "location": "query" - }, - "format": { - "type": "string", - "description": "Structural format of the json response.", - "default": "entity", - "enum": [ - "ac", - "classic", - "entity", - "guids", - "ids", - "mids" - ], - "enumDescriptions": [ - "Compact format useful for autocomplete/suggest UIs.", - "[DEPRECATED] Same format as was returned by api.freebase.com.", - "Basic information about the entities.", - "[DEPRECATED] Ordered list of a freebase guids.", - "Ordered list of freebase ids.", - "Ordered list of freebase mids." - ], - "location": "query" - }, - "help": { - "type": "string", - "description": "The keyword to request help on.", - "enum": [ - "langs", - "mappings", - "predicates" - ], - "enumDescriptions": [ - "The language codes served by the service.", - "The property/path mappings supported by the filter and output request parameters.", - "The predicates and path-terminating properties supported by the filter and output request parameters." - ], - "location": "query" - }, - "indent": { - "type": "boolean", - "description": "Whether to indent the json results or not.", - "location": "query" - }, - "lang": { - "type": "string", - "description": "The code of the language to run the query with. Default is 'en'.", - "repeated": true, - "location": "query" - }, - "limit": { - "type": "integer", - "description": "Maximum number of results to return.", - "default": "20", - "format": "int32", - "location": "query" - }, - "mid": { - "type": "string", - "description": "A mid to use instead of a query.", - "pattern": "^/[mgtx]/[0-2][0-9bcdfghjklmnpqrstvwxyz_]{1,24}$", - "repeated": true, - "location": "query" - }, - "mql_output": { - "type": "string", - "description": "The MQL query to run againist the results to extract more data.", - "location": "query" - }, - "output": { - "type": "string", - "description": "An output expression to request data from matches.", - "pattern": "^\\(.*\\)$", - "location": "query" - }, - "prefixed": { - "type": "boolean", - "description": "Prefix match against names and aliases.", - "location": "query" - }, - "query": { - "type": "string", - "description": "Query term to search for.", - "location": "query" - }, - "scoring": { - "type": "string", - "description": "Relevance scoring algorithm to use.", - "default": "entity", - "enum": [ - "entity", - "freebase", - "schema" - ], - "enumDescriptions": [ - "Use freebase and popularity entity ranking.", - "Use freebase entity ranking.", - "Use schema ranking for properties and types." - ], - "location": "query" - }, - "spell": { - "type": "string", - "description": "Request 'did you mean' suggestions", - "default": "no_spelling", - "enum": [ - "always", - "no_results", - "no_spelling" - ], - "enumDescriptions": [ - "Request spelling suggestions for any query at least three characters long.", - "Request spelling suggestions if no results were found.", - "Don't request spelling suggestions." - ], - "location": "query" - }, - "stemmed": { - "type": "boolean", - "description": "Query on stemmed names and aliases. May not be used with prefixed.", - "location": "query" - }, - "type": { - "type": "string", - "description": "Restrict to topics with this Freebase type id.", - "repeated": true, - "location": "query" - }, - "with": { - "type": "string", - "description": "A rule to match against.", - "repeated": true, - "location": "query" - }, - "without": { - "type": "string", - "description": "A rule to not match against.", - "repeated": true, - "location": "query" - } - }, - "supportsMediaDownload": true - } - } -} diff --git a/etc/api/fusiontables/v1/fusiontables-api.json b/etc/api/fusiontables/v1/fusiontables-api.json index 348875227c..297c671b57 100644 --- a/etc/api/fusiontables/v1/fusiontables-api.json +++ b/etc/api/fusiontables/v1/fusiontables-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/H8bndsg5ucjq1laaWhA4cXUz4Bk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/-xDlQ3Z80n_rfxYaz7dDf-mP00c\"", "discoveryVersion": "v1", "id": "fusiontables:v1", "name": "fusiontables", "version": "v1", - "revision": "20160317", + "revision": "20160526", "title": "Fusion Tables API", "description": "API for working with Fusion Tables data.", "ownerDomain": "google.com", diff --git a/etc/api/fusiontables/v2/fusiontables-api.json b/etc/api/fusiontables/v2/fusiontables-api.json index 29a428e1f7..a6a31356a2 100644 --- a/etc/api/fusiontables/v2/fusiontables-api.json +++ b/etc/api/fusiontables/v2/fusiontables-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7I476Fm3E4XG346rD0zIQBKmwxU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/kDVOG_nLeWEXUFYsMAXo19Rc6tI\"", "discoveryVersion": "v1", "id": "fusiontables:v2", "name": "fusiontables", "version": "v2", - "revision": "20160317", + "revision": "20160526", "title": "Fusion Tables API", "description": "API for working with Fusion Tables data.", "ownerDomain": "google.com", @@ -156,7 +156,7 @@ }, "formatPattern": { "type": "string", - "description": "Format pattern.\nAcceptable values are DT_DATE_MEDIUMe.g Dec 24, 2008 DT_DATE_SHORTfor example 12/24/08 DT_DATE_TIME_MEDIUMfor example Dec 24, 2008 8:30:45 PM DT_DATE_TIME_SHORTfor example 12/24/08 8:30 PM DT_DAY_MONTH_2_DIGIT_YEARfor example 24/12/08 DT_DAY_MONTH_2_DIGIT_YEAR_TIMEfor example 24/12/08 20:30 DT_DAY_MONTH_2_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/08 8:30 PM DT_DAY_MONTH_4_DIGIT_YEARfor example 24/12/2008 DT_DAY_MONTH_4_DIGIT_YEAR_TIMEfor example 24/12/2008 20:30 DT_DAY_MONTH_4_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/2008 8:30 PM DT_ISO_YEAR_MONTH_DAYfor example 2008-12-24 DT_ISO_YEAR_MONTH_DAY_TIMEfor example 2008-12-24 20:30:45 DT_MONTH_DAY_4_DIGIT_YEARfor example 12/24/2008 DT_TIME_LONGfor example 8:30:45 PM UTC-6 DT_TIME_MEDIUMfor example 8:30:45 PM DT_TIME_SHORTfor example 8:30 PM DT_YEAR_ONLYfor example 2008 HIGHLIGHT_UNTYPED_CELLSHighlight cell data that does not match the data type NONENo formatting (default) NUMBER_CURRENCYfor example $1234.56 NUMBER_DEFAULTfor example 1,234.56 NUMBER_INTEGERfor example 1235 NUMBER_NO_SEPARATORfor example 1234.56 NUMBER_PERCENTfor example 123,456% NUMBER_SCIENTIFICfor example 1E3 STRING_EIGHT_LINE_IMAGEDisplays thumbnail images as tall as eight lines of text STRING_FOUR_LINE_IMAGEDisplays thumbnail images as tall as four lines of text STRING_JSON_TEXTAllows JSON editing of text in UI STRING_LINKTreats cell as a link (must start with http:// or https://) STRING_ONE_LINE_IMAGEDisplays thumbnail images as tall as one line of text STRING_VIDEO_OR_MAPDisplay a video or map thumbnail" + "description": "Format pattern.\nAcceptable values are DT_DATE_MEDIUMe.g Dec 24, 2008 DT_DATE_SHORTfor example 12/24/08 DT_DATE_TIME_MEDIUMfor example Dec 24, 2008 8:30:45 PM DT_DATE_TIME_SHORTfor example 12/24/08 8:30 PM DT_DAY_MONTH_2_DIGIT_YEARfor example 24/12/08 DT_DAY_MONTH_2_DIGIT_YEAR_TIMEfor example 24/12/08 20:30 DT_DAY_MONTH_2_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/08 8:30 PM DT_DAY_MONTH_4_DIGIT_YEARfor example 24/12/2008 DT_DAY_MONTH_4_DIGIT_YEAR_TIMEfor example 24/12/2008 20:30 DT_DAY_MONTH_4_DIGIT_YEAR_TIME_MERIDIANfor example 24/12/2008 8:30 PM DT_ISO_YEAR_MONTH_DAYfor example 2008-12-24 DT_ISO_YEAR_MONTH_DAY_TIMEfor example 2008-12-24 20:30:45 DT_MONTH_DAY_4_DIGIT_YEARfor example 12/24/2008 DT_TIME_LONGfor example 8:30:45 PM UTC-6 DT_TIME_MEDIUMfor example 8:30:45 PM DT_TIME_SHORTfor example 8:30 PM DT_YEAR_ONLYfor example 2008 HIGHLIGHT_UNTYPED_CELLSHighlight cell data that does not match the data type NONENo formatting (default) NUMBER_CURRENCYfor example $1234.56 NUMBER_DEFAULTfor example 1,234.56 NUMBER_INTEGERfor example 1235 NUMBER_NO_SEPARATORfor example 1234.56 NUMBER_PERCENTfor example 123,456% NUMBER_SCIENTIFICfor example 1E3 STRING_EIGHT_LINE_IMAGEDisplays thumbnail images as tall as eight lines of text STRING_FOUR_LINE_IMAGEDisplays thumbnail images as tall as four lines of text STRING_JSON_TEXTAllows editing of text as JSON in UI STRING_JSON_LISTAllows editing of text as a JSON list in UI STRING_LINKTreats cell as a link (must start with http:// or https://) STRING_ONE_LINE_IMAGEDisplays thumbnail images as tall as one line of text STRING_VIDEO_OR_MAPDisplay a video or map thumbnail" }, "graphPredicate": { "type": "string", diff --git a/etc/api/games/v1/games-api.json b/etc/api/games/v1/games-api.json index c91a7674ba..40d25f68f8 100644 --- a/etc/api/games/v1/games-api.json +++ b/etc/api/games/v1/games-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/0me1AhhPSi-_0UNmNlsuGvzH204\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/L-Wk4BXhe_pdw7ImRg3HloxNFiA\"", "discoveryVersion": "v1", "id": "games:v1", "name": "games", "canonicalName": "Games", "version": "v1", - "revision": "20160401", + "revision": "20160901", "title": "Google Play Game Services API", "description": "The API for Google Play Game Services.", "ownerDomain": "google.com", @@ -1399,6 +1399,10 @@ "type": "string", "description": "The ID of the player." }, + "profileSettings": { + "$ref": "ProfileSettings", + "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." + }, "title": { "type": "string", "description": "The player's title rewarded for their game activities." @@ -1777,6 +1781,22 @@ } } }, + "ProfileSettings": { + "id": "ProfileSettings", + "type": "object", + "description": "This is a JSON template for profile settings", + "properties": { + "kind": { + "type": "string", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string games#profileSettings.", + "default": "games#profileSettings" + }, + "profileVisible": { + "type": "boolean", + "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs." + } + } + }, "PushToken": { "id": "PushToken", "type": "object", @@ -3012,6 +3032,12 @@ "httpMethod": "GET", "description": "Lists all the achievement definitions for your application.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3055,6 +3081,12 @@ "required": true, "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "requestId": { "type": "string", "description": "A randomly generated numeric ID for each request specified by the caller. This number is used at the server to ensure that the request is handled correctly across retries.", @@ -3088,6 +3120,12 @@ "httpMethod": "GET", "description": "Lists the progress for all your application's achievements for the currently authenticated player.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3152,6 +3190,12 @@ "description": "The ID of the achievement used by this method.", "required": true, "location": "path" + }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" } }, "parameterOrder": [ @@ -3177,6 +3221,12 @@ "required": true, "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "steps": { "type": "integer", "description": "The minimum value to set the steps to.", @@ -3209,6 +3259,12 @@ "description": "The ID of the achievement used by this method.", "required": true, "location": "path" + }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" } }, "parameterOrder": [ @@ -3227,6 +3283,14 @@ "path": "achievements/updateMultiple", "httpMethod": "POST", "description": "Updates multiple achievements for the currently authenticated player.", + "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + } + }, "request": { "$ref": "AchievementUpdateMultipleRequest" }, @@ -3254,6 +3318,12 @@ "required": true, "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3291,6 +3361,14 @@ "path": "applications/played", "httpMethod": "POST", "description": "Indicate that the the currently authenticated user is playing your application.", + "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + } + }, "scopes": [ "https://www.googleapis.com/auth/games", "https://www.googleapis.com/auth/plus.login" @@ -3307,6 +3385,12 @@ "description": "The application ID from the Google Play developer console.", "required": true, "location": "path" + }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" } }, "parameterOrder": [ @@ -3330,6 +3414,12 @@ "httpMethod": "GET", "description": "Returns a list showing the current progress on events in this application for the currently authenticated user.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3363,6 +3453,12 @@ "httpMethod": "GET", "description": "Returns a list of the event definitions in this application.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3396,6 +3492,12 @@ "httpMethod": "POST", "description": "Records a batch of changes to the number of times events have occurred for the currently authenticated user of this application.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3423,6 +3525,12 @@ "httpMethod": "GET", "description": "Retrieves the metadata of the leaderboard with the given ID.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3452,6 +3560,12 @@ "httpMethod": "GET", "description": "Lists all the leaderboard metadata for your application.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3488,6 +3602,14 @@ "path": "metagameConfig", "httpMethod": "GET", "description": "Return the metagame configuration data for the calling application.", + "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + } + }, "response": { "$ref": "MetagameConfig" }, @@ -3514,6 +3636,12 @@ ], "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3561,6 +3689,12 @@ "httpMethod": "GET", "description": "Retrieves the Player resource with the given ID. To retrieve the player for the currently authenticated user, set playerId to me.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3608,6 +3742,12 @@ ], "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3647,6 +3787,14 @@ "path": "pushtokens/remove", "httpMethod": "POST", "description": "Removes a push token for the current user and application. Removing a non-existent push token will report success.", + "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + } + }, "request": { "$ref": "PushTokenId" }, @@ -3660,6 +3808,14 @@ "path": "pushtokens", "httpMethod": "PUT", "description": "Registers a push token for the current user and application.", + "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + } + }, "request": { "$ref": "PushToken" }, @@ -3678,6 +3834,12 @@ "httpMethod": "PUT", "description": "Report that a reward for the milestone corresponding to milestoneId for the quest corresponding to questId has been claimed by the currently authorized user.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "milestoneId": { "type": "string", "description": "The ID of the milestone.", @@ -3718,6 +3880,12 @@ "httpMethod": "POST", "description": "Indicates that the currently authorized user will participate in the quest.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3747,6 +3915,12 @@ "httpMethod": "GET", "description": "Get a list of quests for your application and the currently authenticated player.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3798,6 +3972,12 @@ "description": "The revision of the client SDK used by your application. Format:\n[PLATFORM_TYPE]:[VERSION_NUMBER]. Possible values of PLATFORM_TYPE are:\n \n- \"ANDROID\" - Client is running the Android SDK. \n- \"IOS\" - Client is running the iOS SDK. \n- \"WEB_APP\" - Client is running as a Web App.", "required": true, "location": "query" + }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" } }, "parameterOrder": [ @@ -3821,6 +4001,12 @@ "httpMethod": "POST", "description": "Create a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3844,6 +4030,12 @@ "httpMethod": "POST", "description": "Decline an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3873,6 +4065,12 @@ "httpMethod": "POST", "description": "Dismiss an invitation to join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "roomId": { "type": "string", "description": "The ID of the room.", @@ -3894,6 +4092,12 @@ "httpMethod": "GET", "description": "Get the data for a room.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3923,6 +4127,12 @@ "httpMethod": "POST", "description": "Join a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3955,6 +4165,12 @@ "httpMethod": "POST", "description": "Leave a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -3987,6 +4203,12 @@ "httpMethod": "GET", "description": "Returns invitations to join rooms.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4020,6 +4242,12 @@ "httpMethod": "POST", "description": "Updates sent by a client reporting the status of peers in a room. For internal use by the Games SDK only. Calling this method directly is unsupported.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4056,6 +4284,12 @@ "httpMethod": "GET", "description": "Get high scores, and optionally ranks, in leaderboards for the currently authenticated player. For a specific time span, leaderboardId can be set to ALL to retrieve data for all leaderboards in a given time span.\nNOTE: You cannot ask for 'ALL' leaderboards and 'ALL' timeSpans in the same request; only one parameter may be set to 'ALL'.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "includeRankType": { "type": "string", "description": "The types of ranks to return. If the parameter is omitted, no ranks will be returned.", @@ -4155,6 +4389,12 @@ ], "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4231,6 +4471,12 @@ ], "location": "path" }, + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4302,6 +4548,12 @@ "httpMethod": "POST", "description": "Submits a score to the specified leaderboard.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4345,6 +4597,12 @@ "httpMethod": "POST", "description": "Submits multiple scores to leaderboards.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4372,6 +4630,12 @@ "httpMethod": "GET", "description": "Retrieves the metadata for a given snapshot ID.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4402,6 +4666,12 @@ "httpMethod": "GET", "description": "Retrieves a list of snapshots created by your application for the player corresponding to the player ID.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4449,6 +4719,12 @@ "httpMethod": "PUT", "description": "Cancel a turn-based match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "matchId": { "type": "string", "description": "The ID of the match.", @@ -4470,6 +4746,12 @@ "httpMethod": "POST", "description": "Create a turn-based match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4493,6 +4775,12 @@ "httpMethod": "PUT", "description": "Decline an invitation to play a turn-based match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4522,6 +4810,12 @@ "httpMethod": "PUT", "description": "Dismiss a turn-based match from the match list. The match will no longer show up in the list and will not generate notifications.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "matchId": { "type": "string", "description": "The ID of the match.", @@ -4543,6 +4837,12 @@ "httpMethod": "PUT", "description": "Finish a turn-based match. Each player should make this call once, after all results are in. Only the player whose turn it is may make the first call to Finish, and can pass in the final match state.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4575,6 +4875,12 @@ "httpMethod": "GET", "description": "Get the data for a turn-based match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "includeMatchData": { "type": "boolean", "description": "Get match data along with metadata.", @@ -4609,6 +4915,12 @@ "httpMethod": "PUT", "description": "Join a turn-based match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4638,6 +4950,12 @@ "httpMethod": "PUT", "description": "Leave a turn-based match when it is not the current player's turn, without canceling the match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4667,6 +4985,12 @@ "httpMethod": "PUT", "description": "Leave a turn-based match during the current player's turn, without canceling the match.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4709,6 +5033,12 @@ "httpMethod": "GET", "description": "Returns turn-based matches the player is or was involved in.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "includeMatchData": { "type": "boolean", "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", @@ -4755,6 +5085,12 @@ "httpMethod": "POST", "description": "Create a rematch of a match that was previously completed, with the same participants. This can be called by only one player on a match still in their list; the player must have called Finish first. Returns the newly created match; it will be the caller's turn.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", @@ -4790,6 +5126,12 @@ "httpMethod": "GET", "description": "Returns turn-based matches the player is or was involved in that changed since the last sync call, with the least recent changes coming first. Matches that should be removed from the local cache will have a status of MATCH_DELETED.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "includeMatchData": { "type": "boolean", "description": "True if match data should be returned in the response. Note that not all data will necessarily be returned if include_match_data is true; the server may decide to only return data for some of the matches to limit download size for the client. The remainder of the data for these matches will be retrievable on request.", @@ -4836,6 +5178,12 @@ "httpMethod": "PUT", "description": "Commit the results of a player turn.", "parameters": { + "consistencyToken": { + "type": "string", + "description": "The last-seen mutation timestamp.", + "format": "int64", + "location": "query" + }, "language": { "type": "string", "description": "The preferred language to use for strings returned by this method.", diff --git a/etc/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json b/etc/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json index 8617cd1f60..bfc96105d3 100644 --- a/etc/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json +++ b/etc/api/gamesconfiguration/v1configuration/gamesconfiguration-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/YdxAcvQY54JlurABUnhriMtrFkQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/o78OyoeLvLsQCM448N-aWjOFcbY\"", "discoveryVersion": "v1", "id": "gamesConfiguration:v1configuration", "name": "gamesConfiguration", "canonicalName": "Games Configuration", "version": "v1configuration", - "revision": "20160401", + "revision": "20160901", "title": "Google Play Game Services Publishing API", "description": "The Publishing API for Google Play Game Services.", "ownerDomain": "google.com", diff --git a/etc/api/gamesmanagement/v1management/gamesmanagement-api.json b/etc/api/gamesmanagement/v1management/gamesmanagement-api.json index 90af1f61b0..eaf2c28c9b 100644 --- a/etc/api/gamesmanagement/v1management/gamesmanagement-api.json +++ b/etc/api/gamesmanagement/v1management/gamesmanagement-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/D0PegRXiPBwAiHpiH57qWyW0T8A\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/qREjEbusb3dopi2k7gxmwND6yjQ\"", "discoveryVersion": "v1", "id": "gamesManagement:v1management", "name": "gamesManagement", "canonicalName": "Games Management", "version": "v1management", - "revision": "20160401", + "revision": "20160901", "title": "Google Play Game Services Management API", "description": "The Management API for Google Play Game Services.", "ownerDomain": "google.com", @@ -324,6 +324,10 @@ "type": "string", "description": "The ID of the player." }, + "profileSettings": { + "$ref": "ProfileSettings", + "description": "The player's profile settings. Controls whether or not the player's profile is visible to other players." + }, "title": { "type": "string", "description": "The player's title rewarded for their game activities." @@ -372,6 +376,22 @@ } } }, + "ProfileSettings": { + "id": "ProfileSettings", + "type": "object", + "description": "This is a JSON template for profile settings", + "properties": { + "kind": { + "type": "string", + "description": "Uniquely identifies the type of this resource. Value is always the fixed string gamesManagement#profileSettings.", + "default": "gamesManagement#profileSettings" + }, + "profileVisible": { + "type": "boolean", + "description": "The player's current profile visibility. This field is visible to both 1P and 3P APIs." + } + } + }, "QuestsResetMultipleForAllRequest": { "id": "QuestsResetMultipleForAllRequest", "type": "object", diff --git a/etc/api/genomics/v1/genomics-api.json b/etc/api/genomics/v1/genomics-api.json index 127deac0f2..30a2cc44ed 100644 --- a/etc/api/genomics/v1/genomics-api.json +++ b/etc/api/genomics/v1/genomics-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/nyUO2UOkslUqZUL17-85iW0oVO0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/eElt1TJDnW0IokCJ9H0sGXTCyq0\"", "discoveryVersion": "v1", "id": "genomics:v1", "name": "genomics", "version": "v1", - "revision": "20160407", + "revision": "20160905", "title": "Genomics API", - "description": "Stores, processes, explores and shares genomic data. This API implements the Global Alliance for Genomics and Health (GA4GH) v0.5.1 API as well as several extensions.", + "description": "Stores, processes, explores and shares genomic data.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -443,14 +443,14 @@ }, "exons": { "type": "array", - "description": "The exons that compose this transcript. This field should be unset for genomes where transcript splicing does not occur, for example prokaryotes. Introns are regions of the transcript that are not included in the spliced RNA product. Though not explicitly modeled here, intron ranges can be deduced; all regions of this transcript that are not exons are introns. Exonic sequences do not necessarily code for a translational product (amino acids). Only the regions of exons bounded by the `codingSequence` correspond to coding DNA sequence. Exons are ordered by start position and may not overlap.", + "description": "The exons that compose this transcript. This field should be unset for genomes where transcript splicing does not occur, for example prokaryotes. Introns are regions of the transcript that are not included in the spliced RNA product. Though not explicitly modeled here, intron ranges can be deduced; all regions of this transcript that are not exons are introns. Exonic sequences do not necessarily code for a translational product (amino acids). Only the regions of exons bounded by the codingSequence correspond to coding DNA sequence. Exons are ordered by start position and may not overlap.", "items": { "$ref": "Exon" } }, "codingSequence": { "$ref": "CodingSequence", - "description": "The range of the coding sequence for this transcript, if any. To determine the exact ranges of coding sequence, intersect this range with those of the `exons`, if any. If there are any `exons`, the `codingSequence` must start and end within them. Note that in some cases, the reference genome will not exactly match the observed mRNA transcript e.g. due to variance in the source genome from reference. In these cases, `exon.frame` will not necessarily match the expected reference reading frame and coding exon reference bases cannot necessarily be concatenated to produce the original transcript mRNA." + "description": "The range of the coding sequence for this transcript, if any. To determine the exact ranges of coding sequence, intersect this range with those of the exons, if any. If there are any exons, the codingSequence must start and end within them. Note that in some cases, the reference genome will not exactly match the observed mRNA transcript e.g. due to variance in the source genome from reference. In these cases, exon.frame will not necessarily match the expected reference reading frame and coding exon reference bases cannot necessarily be concatenated to produce the original transcript mRNA." } } }, @@ -470,7 +470,7 @@ }, "frame": { "type": "integer", - "description": "The frame of this exon. Contains a value of 0, 1, or 2, which indicates the offset of the first coding base of the exon within the reading frame of the coding DNA sequence, if any. This field is dependent on the strandedness of this annotation (see Annotation.reverse_strand). For forward stranded annotations, this offset is relative to the `exon.start`. For reverse strand annotations, this offset is relative to the `exon.end - 1`. Unset if this exon does not intersect the coding sequence. Upon creation of a transcript, the frame must be populated for all or none of the coding exons.", + "description": "The frame of this exon. Contains a value of 0, 1, or 2, which indicates the offset of the first coding base of the exon within the reading frame of the coding DNA sequence, if any. This field is dependent on the strandedness of this annotation (see Annotation.reverse_strand). For forward stranded annotations, this offset is relative to the exon.start. For reverse strand annotations, this offset is relative to the exon.end `- 1`. Unset if this exon does not intersect the coding sequence. Upon creation of a transcript, the frame must be populated for all or none of the coding exons.", "format": "int32" } } @@ -501,6 +501,10 @@ "items": { "$ref": "Annotation" } + }, + "requestId": { + "type": "string", + "description": "A unique request ID which enables the server to detect duplicated requests. If provided, duplicated requests will result in the same response; if not provided, duplicated requests may result in duplicated data. For a given annotation set, callers should not reuse `request_id`s when writing different batches of annotations - behavior in this case is undefined. A common approach is to use a UUID. For batch jobs where worker crashes are a possibility, consider using some unique variant of a worker or run ID." } } }, @@ -552,7 +556,7 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -644,7 +648,7 @@ }, "projectId": { "type": "string", - "description": "The Google Developers Console project ID that this dataset belongs to." + "description": "The Google Cloud project ID that this dataset belongs to." }, "name": { "type": "string", @@ -760,7 +764,7 @@ "description": "An OperationMetadata object. This will always be returned with the Operation.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "done": { @@ -776,7 +780,7 @@ "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For exports, an empty response is returned.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -842,7 +846,7 @@ "properties": { "projectId": { "type": "string", - "description": "Required. The Google Developers Console project ID that owns this export. The caller must have WRITE access to this project." + "description": "Required. The Google Cloud project ID that owns this export. The caller must have WRITE access to this project." }, "exportUri": { "type": "string", @@ -1341,7 +1345,7 @@ "properties": { "projectId": { "type": "string", - "description": "The Google Developers Console project ID or number which will be billed for this access. The caller must have WRITE access to this project. Required." + "description": "The Google Cloud project ID which will be billed for this access. The caller must have WRITE access to this project. Required." }, "readGroupSetId": { "type": "string", @@ -1663,6 +1667,14 @@ "items": { "$ref": "VariantSetMetadata" } + }, + "name": { + "type": "string", + "description": "User-specified, mutable name." + }, + "description": { + "type": "string", + "description": "A textual description of this variant set." } } }, @@ -1824,7 +1836,7 @@ }, "callSetIds": { "type": "array", - "description": "Only return variant calls which belong to call sets with these ids. Leaving this blank returns all variant calls. If a variant has no calls belonging to any of these call sets, it won't be returned at all. Currently, variants with no calls from any call set will never be returned.", + "description": "Only return variant calls which belong to call sets with these ids. Leaving this blank returns all variant calls. If a variant has no calls belonging to any of these call sets, it won't be returned at all.", "items": { "type": "string" } @@ -2125,7 +2137,7 @@ "properties": { "projectId": { "type": "string", - "description": "The Google Developers Console project ID or number which will be billed for this access. The caller must have WRITE access to this project. Required." + "description": "The Google Cloud project ID which will be billed for this access. The caller must have WRITE access to this project. Required." }, "variantSetId": { "type": "string", @@ -2207,12 +2219,20 @@ "type": "string", "description": "The time at which the job was submitted to the Genomics service." }, + "startTime": { + "type": "string", + "description": "The time at which the job began to run." + }, + "endTime": { + "type": "string", + "description": "The time at which the job stopped running." + }, "request": { "type": "object", "description": "The original request that started the operation. Note that this will be in current version of the API. If the operation was started with v1beta2 API and a GetOperation is performed on v1 API, a v1 request will be returned.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "events": { @@ -2221,6 +2241,18 @@ "items": { "$ref": "OperationEvent" } + }, + "clientId": { + "type": "string", + "description": "Optionally provided by the caller when submitting the request that creates the operation." + }, + "runtimeMetadata": { + "type": "object", + "description": "Runtime metadata on this Operation.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } } } }, @@ -2229,11 +2261,56 @@ "type": "object", "description": "An event that occurred during an Operation.", "properties": { + "startTime": { + "type": "string", + "description": "Optional time of when event started." + }, + "endTime": { + "type": "string", + "description": "Optional time of when event finished. An event can have a start time and no finish time. If an event has a finish time, there must be a start time." + }, "description": { "type": "string", "description": "Required description of event." } } + }, + "RuntimeMetadata": { + "id": "RuntimeMetadata", + "type": "object", + "description": "Runtime metadata that will be populated in the runtimeMetadata field of the Operation associated with a RunPipeline execution.", + "properties": { + "computeEngine": { + "$ref": "ComputeEngine", + "description": "Execution information specific to Google Compute Engine." + } + } + }, + "ComputeEngine": { + "id": "ComputeEngine", + "type": "object", + "description": "Describes a Compute Engine resource that is being managed by a running pipeline.", + "properties": { + "instanceName": { + "type": "string", + "description": "The instance on which the operation is running." + }, + "zone": { + "type": "string", + "description": "The availability zone in which the instance resides." + }, + "machineType": { + "type": "string", + "description": "The machine type of the instance." + }, + "diskNames": { + "type": "array", + "description": "The names of the disks that were created for this pipeline.", + "items": { + "type": "string" + } + } + } } }, "resources": { @@ -2361,7 +2438,7 @@ "id": "genomics.annotations.create", "path": "v1/annotations", "httpMethod": "POST", - "description": "Creates a new annotation. Caller must have WRITE permission for the associated annotation set. The following fields are required: * annotationSetId * referenceName or referenceId ### Transcripts For annotations of type TRANSCRIPT, the following fields of transcript must be provided: * `exons.start` * `exons.end` All other fields may be optionally specified, unless documented as being server-generated (for example, the `id` field). The annotated range must be no longer than 100Mbp (mega base pairs). See the Annotation resource for additional restrictions on each field.", + "description": "Creates a new annotation. Caller must have WRITE permission for the associated annotation set. The following fields are required: * annotationSetId * referenceName or referenceId ### Transcripts For annotations of type TRANSCRIPT, the following fields of transcript must be provided: * exons.start * exons.end All other fields may be optionally specified, unless documented as being server-generated (for example, the `id` field). The annotated range must be no longer than 100Mbp (mega base pairs). See the Annotation resource for additional restrictions on each field.", "request": { "$ref": "Annotation" }, @@ -2499,7 +2576,7 @@ "parameters": { "projectId": { "type": "string", - "description": "Required. The project to list datasets for.", + "description": "Required. The Google Cloud project ID to list datasets for.", "location": "query" }, "pageSize": { @@ -2854,7 +2931,7 @@ "id": "genomics.readgroupsets.export", "path": "v1/readgroupsets/{readGroupSetId}:export", "httpMethod": "POST", - "description": "Exports a read group set to a BAM file in Google Cloud Storage. For the definitions of read group sets and other genomics resources, see [Fundamentals of Google Genomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics) Note that currently there may be some differences between exported BAM files and the original BAM file at the time of import. See [ImportReadGroupSets](google.genomics.v1.ReadServiceV1.ImportReadGroupSets) for caveats.", + "description": "Exports a read group set to a BAM file in Google Cloud Storage. For the definitions of read group sets and other genomics resources, see [Fundamentals of Google Genomics](https://cloud.google.com/genomics/fundamentals-of-google-genomics) Note that currently there may be some differences between exported BAM files and the original BAM file at the time of import. See ImportReadGroupSets for caveats.", "parameters": { "readGroupSetId": { "type": "string", @@ -3519,7 +3596,7 @@ }, "updateMask": { "type": "string", - "description": "An optional mask specifying which fields to update. Supported fields: * metadata. Leaving `updateMask` unset is equivalent to specifying all mutable fields.", + "description": "An optional mask specifying which fields to update. Supported fields: * metadata. * name. * description. Leaving `updateMask` unset is equivalent to specifying all mutable fields.", "location": "query" } }, diff --git a/etc/api/genomics/v1alpha2/genomics-api.json b/etc/api/genomics/v1alpha2/genomics-api.json index d0df227418..5c92aaa303 100644 --- a/etc/api/genomics/v1alpha2/genomics-api.json +++ b/etc/api/genomics/v1alpha2/genomics-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/mfYjmG0m6Pr2oEdtUYff_W8RPzw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/W87lVft6jezJJo2WLSMnHm7oS64\"", "discoveryVersion": "v1", "id": "genomics:v1alpha2", "name": "genomics", "version": "v1alpha2", - "revision": "20160407", + "revision": "20160905", "title": "Genomics API", - "description": "Stores, processes, explores and shares genomic data. This API implements the Global Alliance for Genomics and Health (GA4GH) v0.5.1 API as well as several extensions.", + "description": "Stores, processes, explores and shares genomic data.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -106,6 +106,9 @@ "https://www.googleapis.com/auth/cloud-platform": { "description": "View and manage your data across Google Cloud Platform services" }, + "https://www.googleapis.com/auth/compute": { + "description": "View and manage your Google Compute Engine resources" + }, "https://www.googleapis.com/auth/genomics": { "description": "View and manage Genomics data" } @@ -127,7 +130,7 @@ "description": "An OperationMetadata object. This will always be returned with the Operation.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "done": { @@ -143,7 +146,7 @@ "description": "If importing ReadGroupSets, an ImportReadGroupSetsResponse is returned. If importing Variants, an ImportVariantsResponse is returned. For exports, an empty response is returned.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -169,7 +172,7 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -251,7 +254,7 @@ "PipelineParameter": { "id": "PipelineParameter", "type": "object", - "description": "Parameters facilitate setting and delivering data into the pipeline's execution environment. They are defined at create time, with optional defaults, and can be overridden at run time. If `localCopy` is unset, then the parameter specifies a string that is passed as-is into the pipeline, as the value of the environment variable with the given name. A default value can be optionally specified at create time. The default can be overridden at run time using the inputs map. If no default is given, a value must be supplied at runtime. If `localCopy` is defined, then the parameter specifies a data source or sink, both in Google Cloud Storage and on the Docker container where the pipeline computation is run. At run time, the Google Cloud Storage paths can be overridden if a default was provided at create time, or must be set otherwise. The pipeline runner should add a key/value pair to either the inputs or outputs map. The indicated data copies will be carried out before/after pipeline execution, just as if the corresponding arguments were provided to `gsutil cp`. For example: Given the following `PipelineParameter`, specified in the `inputParameters` list: ``` {name: \"input_file\", localCopy: {path: \"file.txt\", disk: \"pd1\"}} ``` where `disk` is defined in the `PipelineResources` object as: ``` {name: \"pd1\", mountPoint: \"/mnt/disk/\"} ``` We create a disk named `pd1`, mount it on the host VM, and map `/mnt/pd1` to `/mnt/disk` in the docker container. At runtime, an entry for `input_file` would be required in the inputs map, such as: ``` inputs[\"input_file\"] = \"gs://my-bucket/bar.txt\" ``` This would generate the following gsutil call: ``` gsutil cp gs://my-bucket/bar.txt /mnt/pd1/file.txt ``` The file `/mnt/pd1/file.txt` maps to `/mnt/disk/file.txt` in the Docker container. Note that we do not use `cp -r`, so for inputs, the Google Cloud Storage path (runtime value) must be a file or a glob, while the local path must be a file or a directory, respectively. For outputs, the direction of the copy is reversed: ``` gsutil cp /mnt/disk/file.txt gs://my-bucket/bar.txt ``` Again note that there is no `-r`, so the Google Cloud Storage path (runtime value) must be a file or a directory, while the local path can be a file or a glob, respectively. One restriction, due to docker limitations, is that for outputs that are found on the boot disk, the local path cannot be a glob and must be a file.", + "description": "Parameters facilitate setting and delivering data into the pipeline's execution environment. They are defined at create time, with optional defaults, and can be overridden at run time. If `localCopy` is unset, then the parameter specifies a string that is passed as-is into the pipeline, as the value of the environment variable with the given name. A default value can be optionally specified at create time. The default can be overridden at run time using the inputs map. If no default is given, a value must be supplied at runtime. If `localCopy` is defined, then the parameter specifies a data source or sink, both in Google Cloud Storage and on the Docker container where the pipeline computation is run. The service account associated with the Pipeline (by default the project's Compute Engine service account) must have access to the Google Cloud Storage paths. At run time, the Google Cloud Storage paths can be overridden if a default was provided at create time, or must be set otherwise. The pipeline runner should add a key/value pair to either the inputs or outputs map. The indicated data copies will be carried out before/after pipeline execution, just as if the corresponding arguments were provided to `gsutil cp`. For example: Given the following `PipelineParameter`, specified in the `inputParameters` list: ``` {name: \"input_file\", localCopy: {path: \"file.txt\", disk: \"pd1\"}} ``` where `disk` is defined in the `PipelineResources` object as: ``` {name: \"pd1\", mountPoint: \"/mnt/disk/\"} ``` We create a disk named `pd1`, mount it on the host VM, and map `/mnt/pd1` to `/mnt/disk` in the docker container. At runtime, an entry for `input_file` would be required in the inputs map, such as: ``` inputs[\"input_file\"] = \"gs://my-bucket/bar.txt\" ``` This would generate the following gsutil call: ``` gsutil cp gs://my-bucket/bar.txt /mnt/pd1/file.txt ``` The file `/mnt/pd1/file.txt` maps to `/mnt/disk/file.txt` in the Docker container. Acceptable paths are: Google Cloud storage pathLocal path filefile globdirectory For outputs, the direction of the copy is reversed: ``` gsutil cp /mnt/disk/file.txt gs://my-bucket/bar.txt ``` Acceptable paths are: Local pathGoogle Cloud Storage path filefile file directory - directory must already exist glob directory - directory will be created if it doesn't exist One restriction due to docker limitations, is that for outputs that are found on the boot disk, the local path cannot be a glob and must be a file.", "properties": { "name": { "type": "string", @@ -313,7 +316,7 @@ }, "preemptible": { "type": "boolean", - "description": "At create time means that preemptible machines may be used for the run. At run time, means they should be used. Cannot be true at run time if false at create time. Defaults to `false`." + "description": "Whether to use preemptible VMs. Defaults to `false`. In order to use this, must be true for both create time and run time. Cannot be true at run time if false at create time." }, "minimumRamGb": { "type": "number", @@ -338,6 +341,10 @@ "type": "integer", "description": "The size of the boot disk. Defaults to 10 (GB).", "format": "int32" + }, + "noAddress": { + "type": "boolean", + "description": "Whether to assign an external IP to the instance. Defaults to false. Corresponds to `--no_address` flag for [gcloud compute instances create] (https://cloud.google.com/sdk/gcloud/reference/compute/instances/create). In order to use this, must be true for both create time and run time. Cannot be true at run time if false at create time. ** Note: To use this option, your project must be in Google Access for Private IPs Early Access Program.**" } } }, @@ -427,7 +434,7 @@ }, "serviceAccount": { "$ref": "ServiceAccount", - "description": "Required. The Google Cloud Service Account that will be used to access data and services." + "description": "The Google Cloud Service Account that will be used to access data and services. By default, the compute service account associated with `projectId` is used." }, "clientId": { "type": "string", @@ -440,6 +447,10 @@ "logging": { "$ref": "LoggingOptions", "description": "Required. Logging options. Used by the service to communicate results to the user." + }, + "keepVmAliveOnFailureDuration": { + "type": "string", + "description": "How long to keep the VM up after a failure (for example docker command failed, copying input or output files failed, etc). While the VM is up, one can ssh into the VM to debug. Default is 0; maximum allowed value is 1 day." } } }, @@ -646,12 +657,20 @@ "type": "string", "description": "The time at which the job was submitted to the Genomics service." }, + "startTime": { + "type": "string", + "description": "The time at which the job began to run." + }, + "endTime": { + "type": "string", + "description": "The time at which the job stopped running." + }, "request": { "type": "object", "description": "The original request that started the operation. Note that this will be in current version of the API. If the operation was started with v1beta2 API and a GetOperation is performed on v1 API, a v1 request will be returned.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "events": { @@ -660,6 +679,18 @@ "items": { "$ref": "OperationEvent" } + }, + "clientId": { + "type": "string", + "description": "Optionally provided by the caller when submitting the request that creates the operation." + }, + "runtimeMetadata": { + "type": "object", + "description": "Runtime metadata on this Operation.", + "additionalProperties": { + "type": "any", + "description": "Properties of the object. Contains field @type with type URL." + } } } }, @@ -668,11 +699,56 @@ "type": "object", "description": "An event that occurred during an Operation.", "properties": { + "startTime": { + "type": "string", + "description": "Optional time of when event started." + }, + "endTime": { + "type": "string", + "description": "Optional time of when event finished. An event can have a start time and no finish time. If an event has a finish time, there must be a start time." + }, "description": { "type": "string", "description": "Required description of event." } } + }, + "RuntimeMetadata": { + "id": "RuntimeMetadata", + "type": "object", + "description": "Runtime metadata that will be populated in the runtimeMetadata field of the Operation associated with a RunPipeline execution.", + "properties": { + "computeEngine": { + "$ref": "ComputeEngine", + "description": "Execution information specific to Google Compute Engine." + } + } + }, + "ComputeEngine": { + "id": "ComputeEngine", + "type": "object", + "description": "Describes a Compute Engine resource that is being managed by a running pipeline.", + "properties": { + "instanceName": { + "type": "string", + "description": "The instance on which the operation is running." + }, + "zone": { + "type": "string", + "description": "The availability zone in which the instance resides." + }, + "machineType": { + "type": "string", + "description": "The machine type of the instance." + }, + "diskNames": { + "type": "array", + "description": "The names of the disks that were created for this pipeline.", + "items": { + "type": "string" + } + } + } } }, "resources": { @@ -805,6 +881,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/compute", "https://www.googleapis.com/auth/genomics" ] }, @@ -921,7 +998,7 @@ "id": "genomics.pipelines.setOperationStatus", "path": "v1alpha2/pipelines:setOperationStatus", "httpMethod": "PUT", - "description": "Sets status of a given operation. All timestamps are sent on each call, and the whole series of events is replaced, in case intermediate calls are lost. Should only be called by VMs created by the Pipelines Service and not by end users.", + "description": "Sets status of a given operation. Any new timestamps (as determined by description) are appended to TimestampEvents. Should only be called by VMs created by the Pipelines Service and not by end users.", "request": { "$ref": "SetOperationStatusRequest" }, diff --git a/etc/api/genomics/v1beta2/genomics-api.json b/etc/api/genomics/v1beta2/genomics-api.json index 0e79e55b81..b1027ddc3c 100644 --- a/etc/api/genomics/v1beta2/genomics-api.json +++ b/etc/api/genomics/v1beta2/genomics-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/MOL6g3e203UhwfxwVIGCu1WDtHU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/iwGg9SXMSQRZJqiKSwS3P1Y9Xjc\"", "discoveryVersion": "v1", "id": "genomics:v1beta2", "name": "genomics", "version": "v1beta2", - "revision": "20160406", + "revision": "20160905", "title": "Genomics API", "description": "Provides access to Genomics data.", "ownerDomain": "google.com", @@ -902,7 +902,6 @@ "MergeVariantsRequest": { "id": "MergeVariantsRequest", "type": "object", - "description": "", "properties": { "variants": { "type": "array", @@ -1746,7 +1745,6 @@ "SearchReferenceSetsRequest": { "id": "SearchReferenceSetsRequest", "type": "object", - "description": "", "properties": { "accessions": { "type": "array", @@ -1797,7 +1795,6 @@ "SearchReferencesRequest": { "id": "SearchReferencesRequest", "type": "object", - "description": "", "properties": { "accessions": { "type": "array", @@ -1893,7 +1890,7 @@ "properties": { "callSetIds": { "type": "array", - "description": "Only return variant calls which belong to call sets with these ids. Leaving this blank returns all variant calls. If a variant has no calls belonging to any of these call sets, it won't be returned at all. Currently, variants with no calls from any call set will never be returned.", + "description": "Only return variant calls which belong to call sets with these ids. Leaving this blank returns all variant calls. If a variant has no calls belonging to any of these call sets, it won't be returned at all.", "items": { "type": "string" } @@ -1932,7 +1929,7 @@ }, "variantSetIds": { "type": "array", - "description": "At most one variant set ID must be provided. Only variants from this variant set will be returned. If omitted, a call set id must be included in the request.", + "description": "At most one variant set ID must be provided. Only variants from this variant set will be returned. If omitted, a call set id must be included in the request. Both this and call_set_ids may be set.", "items": { "type": "string" } @@ -2249,6 +2246,10 @@ "type": "string", "description": "The dataset to which this variant set belongs. Immutable." }, + "description": { + "type": "string", + "description": "A textual description of this variant set." + }, "id": { "type": "string", "description": "The Google-generated ID of the variant set. Immutable." @@ -2260,6 +2261,10 @@ "$ref": "Metadata" } }, + "name": { + "type": "string", + "description": "User-specified, mutable name." + }, "referenceBounds": { "type": "array", "description": "A list of all references used by the variants in a variant set with associated coordinate upper bounds for each one.", @@ -2637,7 +2642,7 @@ "parameters": { "callSetId": { "type": "string", - "description": "The ID of the call set to be updated.", + "description": "Required. The ID of the call set to be updated.", "required": true, "location": "path" } @@ -2681,7 +2686,7 @@ "parameters": { "callSetId": { "type": "string", - "description": "The ID of the call set to be updated.", + "description": "Required. The ID of the call set to be updated.", "required": true, "location": "path" } @@ -3405,7 +3410,7 @@ "parameters": { "variantId": { "type": "string", - "description": "The ID of the variant.", + "description": "Required.", "required": true, "location": "path" } @@ -3494,7 +3499,7 @@ "parameters": { "variantSetId": { "type": "string", - "description": "The ID of the variant set to be deleted.", + "description": "The ID of the variant set to be deleted. Required.", "required": true, "location": "path" } @@ -3515,7 +3520,7 @@ "parameters": { "variantSetId": { "type": "string", - "description": "Required. The ID of the variant set that contains variant data which should be exported. The caller must have READ access to this variant set.", + "description": "The ID of the variant set that contains variant data which should be exported. Required. The caller must have READ access to this variant set.", "required": true, "location": "path" } @@ -3543,7 +3548,7 @@ "parameters": { "variantSetId": { "type": "string", - "description": "The ID of the variant set.", + "description": "The ID of the variant set. Required.", "required": true, "location": "path" } diff --git a/etc/api/gmail/v1/gmail-api.json b/etc/api/gmail/v1/gmail-api.json index 9392b27e67..b31e0f5dc3 100644 --- a/etc/api/gmail/v1/gmail-api.json +++ b/etc/api/gmail/v1/gmail-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/zPbxFrF5pjvpdJALHZzVyfTBzGU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/c9szhoCXYrKaLKrzYGmZhJZBHUc\"", "discoveryVersion": "v1", "id": "gmail:v1", "name": "gmail", "version": "v1", - "revision": "20160316", + "revision": "20160711", "title": "Gmail API", "description": "Access Gmail mailboxes including sending user email.", "ownerDomain": "google.com", @@ -89,11 +89,50 @@ }, "https://www.googleapis.com/auth/gmail.send": { "description": "Send email on your behalf" + }, + "https://www.googleapis.com/auth/gmail.settings.basic": { + "description": "Manage your basic mail settings" + }, + "https://www.googleapis.com/auth/gmail.settings.sharing": { + "description": "Manage your sensitive mail settings, including who can manage your mail" } } } }, "schemas": { + "AutoForwarding": { + "id": "AutoForwarding", + "type": "object", + "description": "Auto-forwarding settings for an account.", + "properties": { + "disposition": { + "type": "string", + "description": "The state that a message should be left in after it has been forwarded.", + "enum": [ + "archive", + "dispositionUnspecified", + "leaveInInbox", + "markRead", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + }, + "emailAddress": { + "type": "string", + "description": "Email address to which all incoming messages are forwarded. This email address must be a verified member of the forwarding addresses." + }, + "enabled": { + "type": "boolean", + "description": "Whether all incoming mail is automatically forwarded to another address." + } + } + }, "BatchDeleteMessagesRequest": { "id": "BatchDeleteMessagesRequest", "type": "object", @@ -127,6 +166,129 @@ } } }, + "Filter": { + "id": "Filter", + "type": "object", + "description": "Resource definition for Gmail filters. Filters apply to specific messages instead of an entire email thread.", + "properties": { + "action": { + "$ref": "FilterAction", + "description": "Action that the filter performs." + }, + "criteria": { + "$ref": "FilterCriteria", + "description": "Matching criteria for the filter." + }, + "id": { + "type": "string", + "description": "The server assigned ID of the filter." + } + } + }, + "FilterAction": { + "id": "FilterAction", + "type": "object", + "description": "A set of actions to perform on a message.", + "properties": { + "addLabelIds": { + "type": "array", + "description": "List of labels to add to the message.", + "items": { + "type": "string" + } + }, + "forward": { + "type": "string", + "description": "Email address that the message should be forwarded to." + }, + "removeLabelIds": { + "type": "array", + "description": "List of labels to remove from the message.", + "items": { + "type": "string" + } + } + } + }, + "FilterCriteria": { + "id": "FilterCriteria", + "type": "object", + "description": "Message matching criteria.", + "properties": { + "excludeChats": { + "type": "boolean", + "description": "Whether the response should exclude chats." + }, + "from": { + "type": "string", + "description": "The sender's display name or email address." + }, + "hasAttachment": { + "type": "boolean", + "description": "Whether the message has any attachment." + }, + "negatedQuery": { + "type": "string", + "description": "Only return messages not matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\"." + }, + "query": { + "type": "string", + "description": "Only return messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\"." + }, + "size": { + "type": "integer", + "description": "The size of the entire RFC822 message in bytes, including all headers and attachments.", + "format": "int32" + }, + "sizeComparison": { + "type": "string", + "description": "How the message size in bytes should be in relation to the size field.", + "enum": [ + "larger", + "smaller", + "unspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ] + }, + "subject": { + "type": "string", + "description": "Case-insensitive phrase found in the message's subject. Trailing and leading whitespace are be trimmed and adjacent spaces are collapsed." + }, + "to": { + "type": "string", + "description": "The recipient's display name or email address. Includes recipients in the \"to\", \"cc\", and \"bcc\" header fields. You can use simply the local part of the email address. For example, \"example\" and \"example@\" both match \"example@gmail.com\". This field is case-insensitive." + } + } + }, + "ForwardingAddress": { + "id": "ForwardingAddress", + "type": "object", + "description": "Settings for a forwarding address.", + "properties": { + "forwardingEmail": { + "type": "string", + "description": "An email address to which messages can be forwarded." + }, + "verificationStatus": { + "type": "string", + "description": "Indicates whether this address has been verified and is usable for forwarding. Read-only.", + "enum": [ + "accepted", + "pending", + "verificationStatusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, "History": { "id": "History", "type": "object", @@ -224,6 +386,42 @@ } } }, + "ImapSettings": { + "id": "ImapSettings", + "type": "object", + "description": "IMAP settings for an account.", + "properties": { + "autoExpunge": { + "type": "boolean", + "description": "If this value is true, Gmail will immediately expunge a message when it is marked as deleted in IMAP. Otherwise, Gmail will wait for an update from the client before expunging messages marked as deleted." + }, + "enabled": { + "type": "boolean", + "description": "Whether IMAP is enabled for the account." + }, + "expungeBehavior": { + "type": "string", + "description": "The action that will be executed on a message when it is marked as deleted and expunged from the last visible IMAP folder.", + "enum": [ + "archive", + "deleteForever", + "expungeBehaviorUnspecified", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "maxFolderSize": { + "type": "integer", + "description": "An optional limit on the number of messages that an IMAP folder may contain. Legal values are 0, 1000, 2000, 5000 or 10000. A value of zero is interpreted to mean that there is no limit.", + "format": "int32" + } + } + }, "Label": { "id": "Label", "type": "object", @@ -342,6 +540,34 @@ } } }, + "ListFiltersResponse": { + "id": "ListFiltersResponse", + "type": "object", + "description": "Response for the ListFilters method.", + "properties": { + "filter": { + "type": "array", + "description": "List of a user's filters.", + "items": { + "$ref": "Filter" + } + } + } + }, + "ListForwardingAddressesResponse": { + "id": "ListForwardingAddressesResponse", + "type": "object", + "description": "Response for the ListForwardingAddresses method.", + "properties": { + "forwardingAddresses": { + "type": "array", + "description": "List of addresses that may be used for forwarding.", + "items": { + "$ref": "ForwardingAddress" + } + } + } + }, "ListHistoryResponse": { "id": "ListHistoryResponse", "type": "object", @@ -399,6 +625,20 @@ } } }, + "ListSendAsResponse": { + "id": "ListSendAsResponse", + "type": "object", + "description": "Response for the ListSendAs method.", + "properties": { + "sendAs": { + "type": "array", + "description": "List of send-as aliases.", + "items": { + "$ref": "SendAs" + } + } + } + }, "ListThreadsResponse": { "id": "ListThreadsResponse", "type": "object", @@ -591,6 +831,47 @@ } } }, + "PopSettings": { + "id": "PopSettings", + "type": "object", + "description": "POP settings for an account.", + "properties": { + "accessWindow": { + "type": "string", + "description": "The range of messages which are accessible via POP.", + "enum": [ + "accessWindowUnspecified", + "allMail", + "disabled", + "fromNowOn" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "disposition": { + "type": "string", + "description": "The action that will be executed on a message after it has been fetched via POP.", + "enum": [ + "archive", + "dispositionUnspecified", + "leaveInInbox", + "markRead", + "trash" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "" + ] + } + } + }, "Profile": { "id": "Profile", "type": "object", @@ -617,6 +898,99 @@ } } }, + "SendAs": { + "id": "SendAs", + "type": "object", + "description": "Settings associated with a send-as alias, which can be either the primary login address associated with the account or a custom \"from\" address. Send-as aliases correspond to the \"Send Mail As\" feature in the web interface. See for more details.", + "properties": { + "displayName": { + "type": "string", + "description": "A name that appears in the \"From:\" header for mail sent using this alias. For custom \"from\" addresses, when this is empty, Gmail will populate the \"From:\" header with the name that is used for the primary address associated with the account." + }, + "isDefault": { + "type": "boolean", + "description": "Whether this address is selected as the default \"From:\" address in situations such as composing a new message or sending a vacation auto-reply. Every Gmail account has exactly one default send-as address, so the only legal value that clients may write to this field is true. Changing this from false to true for an address will result in this field becoming false for the other previous default address." + }, + "isPrimary": { + "type": "boolean", + "description": "Whether this address is the primary address used to login to the account. Every Gmail account has exactly one primary address, and it cannot be deleted from the collection of send-as aliases. This field is read-only." + }, + "replyToAddress": { + "type": "string", + "description": "An optional email address that is included in a \"Reply-To:\" header for mail sent using this alias. If this is empty, Gmail will not generate a \"Reply-To:\" header." + }, + "sendAsEmail": { + "type": "string", + "description": "The email address that appears in the \"From:\" header for mail sent using this alias. This is read-only for all operations except create." + }, + "signature": { + "type": "string", + "description": "An optional HTML signature that is included in messages composed with this alias in the Gmail web UI." + }, + "smtpMsa": { + "$ref": "SmtpMsa", + "description": "An optional SMTP service that will be used as an outbound relay for mail sent using this alias. If this is empty, outbound mail will be sent directly from Gmail's servers to the destination SMTP service. This setting only applies to custom \"from\" aliases." + }, + "treatAsAlias": { + "type": "boolean", + "description": "Whether Gmail should treat this address as an alias for the user's primary email address. See for more details. This setting only applies to custom \"from\" aliases." + }, + "verificationStatus": { + "type": "string", + "description": "Indicates whether this address has been verified for use as a send-as alias. Read-only. This setting only applies to custom \"from\" aliases.", + "enum": [ + "accepted", + "pending", + "verificationStatusUnspecified" + ], + "enumDescriptions": [ + "", + "", + "" + ] + } + } + }, + "SmtpMsa": { + "id": "SmtpMsa", + "type": "object", + "description": "Configuration for communication with an SMTP service.", + "properties": { + "host": { + "type": "string", + "description": "The hostname of the SMTP service. Required." + }, + "password": { + "type": "string", + "description": "The password that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses." + }, + "port": { + "type": "integer", + "description": "The port of the SMTP service. Required.", + "format": "int32" + }, + "securityMode": { + "type": "string", + "description": "The protocol that will be used to secure communication with the SMTP service. Required.", + "enum": [ + "none", + "securityModeUnspecified", + "ssl", + "starttls" + ], + "enumDescriptions": [ + "", + "", + "", + "" + ] + }, + "username": { + "type": "string", + "description": "The username that will be used for authentication with the SMTP service. This is a write-only field that can be specified in requests to create or update SendAs settings; it is never populated in responses." + } + } + }, "Thread": { "id": "Thread", "type": "object", @@ -644,6 +1018,47 @@ } } }, + "VacationSettings": { + "id": "VacationSettings", + "type": "object", + "description": "Vacation auto-reply settings for an account. These settings correspond to the \"Vacation responder\" feature in the web interface. See for more details.", + "properties": { + "enableAutoReply": { + "type": "boolean", + "description": "Flag that controls whether Gmail automatically replies to messages." + }, + "endTime": { + "type": "string", + "description": "An optional end time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives before the end time. If both startTime and endTime are specified, startTime must precede endTime.", + "format": "int64" + }, + "responseBodyHtml": { + "type": "string", + "description": "Response body in HTML format. Gmail will sanitize the HTML before storing it." + }, + "responseBodyPlainText": { + "type": "string", + "description": "Response body in plain text format." + }, + "responseSubject": { + "type": "string", + "description": "Optional text to prepend to the subject line in vacation responses. In order to enable auto-replies, either the response subject or the response body must be nonempty." + }, + "restrictToContacts": { + "type": "boolean", + "description": "Flag that determines whether responses are sent to recipients who are not in the user's list of contacts." + }, + "restrictToDomain": { + "type": "boolean", + "description": "Flag that determines whether responses are sent to recipients who are outside of the user's domain. This feature is only available for Google Apps users." + }, + "startTime": { + "type": "string", + "description": "An optional start time for sending auto-replies (epoch ms). When this is specified, Gmail will automatically reply only to messages that it receives after the start time. If both startTime and endTime are specified, startTime must precede endTime.", + "format": "int64" + } + } + }, "WatchRequest": { "id": "WatchRequest", "type": "object", @@ -930,6 +1345,11 @@ "description": "Page token to retrieve a specific page of results in the list.", "location": "query" }, + "q": { + "type": "string", + "description": "Only return draft messages matching the specified query. Supports the same query format as the Gmail search box. For example, \"from:someuser@example.com rfc822msgid: is:unread\".", + "location": "query" + }, "userId": { "type": "string", "description": "The user's email address. The special value me can be used to indicate the authenticated user.", @@ -1805,6 +2225,686 @@ } } }, + "settings": { + "methods": { + "getAutoForwarding": { + "id": "gmail.users.settings.getAutoForwarding", + "path": "{userId}/settings/autoForwarding", + "httpMethod": "GET", + "description": "Gets the auto-forwarding setting for the specified account.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "AutoForwarding" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getImap": { + "id": "gmail.users.settings.getImap", + "path": "{userId}/settings/imap", + "httpMethod": "GET", + "description": "Gets IMAP settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "ImapSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getPop": { + "id": "gmail.users.settings.getPop", + "path": "{userId}/settings/pop", + "httpMethod": "GET", + "description": "Gets POP settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "PopSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "getVacation": { + "id": "gmail.users.settings.getVacation", + "path": "{userId}/settings/vacation", + "httpMethod": "GET", + "description": "Gets vacation responder settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "VacationSettings" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updateAutoForwarding": { + "id": "gmail.users.settings.updateAutoForwarding", + "path": "{userId}/settings/autoForwarding", + "httpMethod": "PUT", + "description": "Updates the auto-forwarding setting for the specified account. A verified forwarding address must be specified when auto-forwarding is enabled.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "AutoForwarding" + }, + "response": { + "$ref": "AutoForwarding" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "updateImap": { + "id": "gmail.users.settings.updateImap", + "path": "{userId}/settings/imap", + "httpMethod": "PUT", + "description": "Updates IMAP settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "ImapSettings" + }, + "response": { + "$ref": "ImapSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updatePop": { + "id": "gmail.users.settings.updatePop", + "path": "{userId}/settings/pop", + "httpMethod": "PUT", + "description": "Updates POP settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "PopSettings" + }, + "response": { + "$ref": "PopSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "updateVacation": { + "id": "gmail.users.settings.updateVacation", + "path": "{userId}/settings/vacation", + "httpMethod": "PUT", + "description": "Updates vacation responder settings.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "VacationSettings" + }, + "response": { + "$ref": "VacationSettings" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + }, + "resources": { + "filters": { + "methods": { + "create": { + "id": "gmail.users.settings.filters.create", + "path": "{userId}/settings/filters", + "httpMethod": "POST", + "description": "Creates a filter.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "Filter" + }, + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "delete": { + "id": "gmail.users.settings.filters.delete", + "path": "{userId}/settings/filters/{id}", + "httpMethod": "DELETE", + "description": "Deletes a filter.", + "parameters": { + "id": { + "type": "string", + "description": "The ID of the filter to be deleted.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "id" + ], + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "get": { + "id": "gmail.users.settings.filters.get", + "path": "{userId}/settings/filters/{id}", + "httpMethod": "GET", + "description": "Gets a filter.", + "parameters": { + "id": { + "type": "string", + "description": "The ID of the filter to be fetched.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "id" + ], + "response": { + "$ref": "Filter" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "id": "gmail.users.settings.filters.list", + "path": "{userId}/settings/filters", + "httpMethod": "GET", + "description": "Lists the message filters of a Gmail user.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "ListFiltersResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + } + }, + "forwardingAddresses": { + "methods": { + "create": { + "id": "gmail.users.settings.forwardingAddresses.create", + "path": "{userId}/settings/forwardingAddresses", + "httpMethod": "POST", + "description": "Creates a forwarding address. If ownership verification is required, a message will be sent to the recipient and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "ForwardingAddress" + }, + "response": { + "$ref": "ForwardingAddress" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "delete": { + "id": "gmail.users.settings.forwardingAddresses.delete", + "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", + "httpMethod": "DELETE", + "description": "Deletes the specified forwarding address and revokes any verification that may have been required.", + "parameters": { + "forwardingEmail": { + "type": "string", + "description": "The forwarding address to be deleted.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "forwardingEmail" + ], + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "get": { + "id": "gmail.users.settings.forwardingAddresses.get", + "path": "{userId}/settings/forwardingAddresses/{forwardingEmail}", + "httpMethod": "GET", + "description": "Gets the specified forwarding address.", + "parameters": { + "forwardingEmail": { + "type": "string", + "description": "The forwarding address to be retrieved.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "forwardingEmail" + ], + "response": { + "$ref": "ForwardingAddress" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "id": "gmail.users.settings.forwardingAddresses.list", + "path": "{userId}/settings/forwardingAddresses", + "httpMethod": "GET", + "description": "Lists the forwarding addresses for the specified account.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "ListForwardingAddressesResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + } + } + }, + "sendAs": { + "methods": { + "create": { + "id": "gmail.users.settings.sendAs.create", + "path": "{userId}/settings/sendAs", + "httpMethod": "POST", + "description": "Creates a custom \"from\" send-as alias. If an SMTP MSA is specified, Gmail will attempt to connect to the SMTP service to validate the configuration before creating the alias. If ownership verification is required for the alias, a message will be sent to the email address and the resource's verification status will be set to pending; otherwise, the resource will be created with verification status set to accepted. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "delete": { + "id": "gmail.users.settings.sendAs.delete", + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "httpMethod": "DELETE", + "description": "Deletes the specified send-as alias. Revokes any verification that may have been required for using it.", + "parameters": { + "sendAsEmail": { + "type": "string", + "description": "The send-as alias to be deleted.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "get": { + "id": "gmail.users.settings.sendAs.get", + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "httpMethod": "GET", + "description": "Gets the specified send-as alias. Fails with an HTTP 404 error if the specified address is not a member of the collection.", + "parameters": { + "sendAsEmail": { + "type": "string", + "description": "The send-as alias to be retrieved.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "list": { + "id": "gmail.users.settings.sendAs.list", + "path": "{userId}/settings/sendAs", + "httpMethod": "GET", + "description": "Lists the send-as aliases for the specified account. The result includes the primary send-as address associated with the account as well as any custom \"from\" aliases.", + "parameters": { + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId" + ], + "response": { + "$ref": "ListSendAsResponse" + }, + "scopes": [ + "https://mail.google.com/", + "https://www.googleapis.com/auth/gmail.modify", + "https://www.googleapis.com/auth/gmail.readonly", + "https://www.googleapis.com/auth/gmail.settings.basic" + ] + }, + "patch": { + "id": "gmail.users.settings.sendAs.patch", + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "httpMethod": "PATCH", + "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias. This method supports patch semantics.", + "parameters": { + "sendAsEmail": { + "type": "string", + "description": "The send-as alias to be updated.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "update": { + "id": "gmail.users.settings.sendAs.update", + "path": "{userId}/settings/sendAs/{sendAsEmail}", + "httpMethod": "PUT", + "description": "Updates a send-as alias. If a signature is provided, Gmail will sanitize the HTML before saving it with the alias.", + "parameters": { + "sendAsEmail": { + "type": "string", + "description": "The send-as alias to be updated.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "request": { + "$ref": "SendAs" + }, + "response": { + "$ref": "SendAs" + }, + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.basic", + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + }, + "verify": { + "id": "gmail.users.settings.sendAs.verify", + "path": "{userId}/settings/sendAs/{sendAsEmail}/verify", + "httpMethod": "POST", + "description": "Sends a verification email to the specified send-as alias address. The verification status must be pending.", + "parameters": { + "sendAsEmail": { + "type": "string", + "description": "The send-as alias to be verified.", + "required": true, + "location": "path" + }, + "userId": { + "type": "string", + "description": "User's email address. The special value \"me\" can be used to indicate the authenticated user.", + "default": "me", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "userId", + "sendAsEmail" + ], + "scopes": [ + "https://www.googleapis.com/auth/gmail.settings.sharing" + ] + } + } + } + } + }, "threads": { "methods": { "delete": { diff --git a/etc/api/groupsmigration/v1/groupsmigration-api.json b/etc/api/groupsmigration/v1/groupsmigration-api.json index 35969088fb..09374bb95a 100644 --- a/etc/api/groupsmigration/v1/groupsmigration-api.json +++ b/etc/api/groupsmigration/v1/groupsmigration-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/HWdr3QolTxcnkwueTlDTCxOXBdE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/HWdr3QolTxcnkwueTlDTCxOXBdE\"", "discoveryVersion": "v1", "id": "groupsmigration:v1", "name": "groupsmigration", diff --git a/etc/api/groupssettings/v1/groupssettings-api.json b/etc/api/groupssettings/v1/groupssettings-api.json index 672bde795f..7108e0380e 100644 --- a/etc/api/groupssettings/v1/groupssettings-api.json +++ b/etc/api/groupssettings/v1/groupssettings-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Py5HOWHJ0CMbcB0y6Fw5QYwibOE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/WmR-pRQA43Avmy6ShfhWJLW2ne8\"", "discoveryVersion": "v1", "id": "groupssettings:v1", "name": "groupssettings", "version": "v1", - "revision": "20160323", + "revision": "20160525", "title": "Groups Settings API", "description": "Lets you manage permission levels and related settings of a group.", "ownerDomain": "google.com", @@ -99,6 +99,10 @@ "type": "string", "description": "If the group is archive only" }, + "customFooterText": { + "type": "string", + "description": "Custom footer text." + }, "customReplyTo": { "type": "string", "description": "Default email to which reply to any message should go." @@ -115,6 +119,10 @@ "type": "string", "description": "Email id of the group" }, + "includeCustomFooter": { + "type": "string", + "description": "Whether to include custom footer." + }, "includeInGlobalAddressList": { "type": "string", "description": "If this groups should be included in global address list or not." diff --git a/etc/api/iam/v1/iam-api.json b/etc/api/iam/v1/iam-api.json index 68eb06ddf8..dc13e3a48f 100644 --- a/etc/api/iam/v1/iam-api.json +++ b/etc/api/iam/v1/iam-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/KGIJuBPLol6TqL9arf5YOmp-wQ0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/KGIJuBPLol6TqL9arf5YOmp-wQ0\"", "discoveryVersion": "v1", "id": "iam:v1", "name": "iam", diff --git a/etc/api/identitytoolkit/v3/identitytoolkit-api.json b/etc/api/identitytoolkit/v3/identitytoolkit-api.json index 255117d756..8116f084da 100644 --- a/etc/api/identitytoolkit/v3/identitytoolkit-api.json +++ b/etc/api/identitytoolkit/v3/identitytoolkit-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Oi0KnpKPJva7LMe3W0nV9ypaEjo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/hUSUQ1FCOLm-WaxWC_MbF3f27YE\"", "discoveryVersion": "v1", "id": "identitytoolkit:v3", "name": "identitytoolkit", "canonicalName": "Identity Toolkit", "version": "v3", - "revision": "20160324", + "revision": "20160812", "title": "Google Identity Toolkit API", "description": "Help the third party sites to implement federated login.", "ownerDomain": "google.com", @@ -245,6 +245,10 @@ "type": "string", "description": "The app ID of the mobile app, base64(CERT_SHA1):PACKAGE_NAME for Android, BUNDLE_ID for iOS." }, + "authFlowType": { + "type": "string", + "description": "Explicitly specify the auth flow type. Currently only support \"CODE_FLOW\" type. The field is only used for Google provider." + }, "clientId": { "type": "string", "description": "The relying party OAuth client ID." @@ -257,6 +261,10 @@ "type": "string", "description": "The URI to which the IDP redirects the user after the federated login flow." }, + "hostedDomain": { + "type": "string", + "description": "The hosted domain to restrict sign-in to accounts at that domain for Google Apps hosted accounts." + }, "identifier": { "type": "string", "description": "The email or federated ID of the user." @@ -280,6 +288,10 @@ "providerId": { "type": "string", "description": "The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, live.net and yahoo.com. For other OpenID IdPs it's the OP identifier." + }, + "sessionId": { + "type": "string", + "description": "The session_id passed by client." } } }, @@ -455,6 +467,11 @@ "type": "string", "description": "Response to the captcha." }, + "createdAt": { + "type": "string", + "description": "The timestamp when the account is created.", + "format": "int64" + }, "delegatedProjectNumber": { "type": "string", "description": "GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.", @@ -498,6 +515,11 @@ "type": "string", "description": "Instance id token of the app." }, + "lastLoginAt": { + "type": "string", + "description": "Last login timestamp.", + "format": "int64" + }, "localId": { "type": "string", "description": "The local ID of the user." @@ -549,6 +571,13 @@ "type": "string", "description": "Browser API key, needed when making http request to Apiary." }, + "authorizedDomains": { + "type": "array", + "description": "Authorized domains for widget redirect.", + "items": { + "type": "string" + } + }, "changeEmailTemplate": { "$ref": "EmailTemplate", "description": "Change email template." @@ -656,10 +685,6 @@ "password": { "type": "string", "description": "The new password of the user." - }, - "returnSecureToken": { - "type": "boolean", - "description": "Whether return sts id token and refresh token instead of gitkit token." } } }, @@ -736,6 +761,10 @@ "type": "string", "description": "The URI to which the IDP redirects the user back. It may contain federated login result params added by the IDP." }, + "returnIdpCredential": { + "type": "boolean", + "description": "Whether return 200 and IDP credential rather than throw exception when federated id is already linked." + }, "returnRefreshToken": { "type": "boolean", "description": "Whether to return refresh tokens." @@ -755,6 +784,11 @@ "type": "object", "description": "Request to verify a custom token", "properties": { + "delegatedProjectNumber": { + "type": "string", + "description": "GCP project number of the requesting delegated app. Currently only intended for Firebase V1 migration.", + "format": "int64" + }, "instanceId": { "type": "string", "description": "Instance id token of the app." @@ -838,6 +872,13 @@ "secret": { "type": "string", "description": "OAuth2 client secret." + }, + "whitelistedAudiences": { + "type": "array", + "description": "Whitelisted client IDs for audience check.", + "items": { + "type": "string" + } } } }, @@ -924,10 +965,19 @@ "description": "The fixed string \"identitytoolkit#SetAccountInfoResponse\".", "default": "identitytoolkit#SetAccountInfoResponse" }, + "localId": { + "type": "string", + "description": "The local ID of the user." + }, "newEmail": { "type": "string", "description": "The new email the user attempts to change to." }, + "passwordHash": { + "type": "string", + "description": "The user's hashed password.", + "format": "byte" + }, "photoUrl": { "type": "string", "description": "The photo url of the user." @@ -942,6 +992,10 @@ "type": "string", "description": "The user's display name at the IDP." }, + "federatedId": { + "type": "string", + "description": "User's identifier at IDP." + }, "photoUrl": { "type": "string", "description": "The user's photo url at the IDP." @@ -1031,6 +1085,11 @@ "type": "object", "description": "Template for an individual account info.", "properties": { + "createdAt": { + "type": "string", + "description": "User creation timestamp.", + "format": "int64" + }, "disabled": { "type": "boolean", "description": "Whether the user is disabled." @@ -1047,6 +1106,11 @@ "type": "boolean", "description": "Whether the email has been verified." }, + "lastLoginAt": { + "type": "string", + "description": "last login timestamp.", + "format": "int64" + }, "localId": { "type": "string", "description": "The local ID of the user." @@ -1094,6 +1158,14 @@ "rawId": { "type": "string", "description": "User's raw identifier directly returned from IDP." + }, + "rawUserInfo": { + "type": "string", + "description": "Raw IDP-returned user info." + }, + "screenName": { + "type": "string", + "description": "User's screen name at Twitter." } } } @@ -1103,6 +1175,10 @@ "description": "The user's password salt.", "format": "byte" }, + "screenName": { + "type": "string", + "description": "User's screen name at Twitter." + }, "validSince": { "type": "string", "description": "Timestamp in seconds for valid login token.", @@ -1156,6 +1232,10 @@ "type": "boolean", "description": "The value is true if the IDP is also the email provider. It means the user owns the email." }, + "errorMessage": { + "type": "string", + "description": "Client error code." + }, "expiresIn": { "type": "string", "description": "If idToken is STS id token, then this field will be expiration time of STS id token in seconds.", @@ -1223,6 +1303,10 @@ "description": "The lifetime in seconds of the OAuth2 access token.", "format": "int32" }, + "oauthIdToken": { + "type": "string", + "description": "The OIDC id token." + }, "oauthRequestToken": { "type": "string", "description": "The user approved request token for the OpenID OAuth extension." @@ -1247,10 +1331,18 @@ "type": "string", "description": "The IdP ID. For white listed IdPs it's a short domain name e.g. google.com, aol.com, live.net and yahoo.com. If the \"providerId\" param is set to OpenID OP identifer other than the whilte listed IdPs the OP identifier is returned. If the \"identifier\" param is federated ID in the createAuthUri request. The domain part of the federated ID is returned." }, + "rawUserInfo": { + "type": "string", + "description": "Raw IDP-returned user info." + }, "refreshToken": { "type": "string", "description": "If idToken is STS id token, then this field will be refresh token." }, + "screenName": { + "type": "string", + "description": "The screen_name of a Twitter user." + }, "timeZone": { "type": "string", "description": "The timezone of the user." diff --git a/etc/api/kgsearch/v1/kgsearch-api.json b/etc/api/kgsearch/v1/kgsearch-api.json index 4e896cac48..5750ca1396 100644 --- a/etc/api/kgsearch/v1/kgsearch-api.json +++ b/etc/api/kgsearch/v1/kgsearch-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/MyGIPHuwU0Ku04gaZJZTvYYLLEQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/MyGIPHuwU0Ku04gaZJZTvYYLLEQ\"", "discoveryVersion": "v1", "id": "kgsearch:v1", "name": "kgsearch", diff --git a/etc/api/language/v1beta1/language-api.json b/etc/api/language/v1beta1/language-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/licensing/v1/licensing-api.json b/etc/api/licensing/v1/licensing-api.json index a83bb6a490..5429375cb8 100644 --- a/etc/api/licensing/v1/licensing-api.json +++ b/etc/api/licensing/v1/licensing-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/e3DwUYJq7cR8DMYb0b0rJ8XCL6k\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/e3DwUYJq7cR8DMYb0b0rJ8XCL6k\"", "discoveryVersion": "v1", "id": "licensing:v1", "name": "licensing", diff --git a/etc/api/logging/v2beta1/logging-api.json b/etc/api/logging/v2beta1/logging-api.json index b3a0d88dfe..c3aa09f32a 100644 --- a/etc/api/logging/v2beta1/logging-api.json +++ b/etc/api/logging/v2beta1/logging-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/AGY2FGWaHRZwgyAazem2sSX20dM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/AGY2FGWaHRZwgyAazem2sSX20dM\"", "discoveryVersion": "v1", "id": "logging:v2beta1", "name": "logging", diff --git a/etc/api/mirror/v1/mirror-api.json b/etc/api/mirror/v1/mirror-api.json index c41c587b17..fe5e78b653 100644 --- a/etc/api/mirror/v1/mirror-api.json +++ b/etc/api/mirror/v1/mirror-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/22GY9K9VtYhN_tb0gpdw_zDH1Gg\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/OwaGZAsygqh-DVZUGXJhzHuvoBQ\"", "discoveryVersion": "v1", "id": "mirror:v1", "name": "mirror", "version": "v1", - "revision": "20151206", + "revision": "20160616", "title": "Google Mirror API", - "description": "API for interacting with Glass users via the timeline.", + "description": "Interacts with Glass users via the timeline.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/monitoring/v3/monitoring-api.json b/etc/api/monitoring/v3/monitoring-api.json index af3f7684dc..fcedabcb3d 100644 --- a/etc/api/monitoring/v3/monitoring-api.json +++ b/etc/api/monitoring/v3/monitoring-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/W_DehY1ieVoEybycxDkoZdKE5Bk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/xW_CLgXez5AZDCw5fhxCvxKwgIc\"", "discoveryVersion": "v1", "id": "monitoring:v3", "name": "monitoring", "version": "v3", - "revision": "20160321", + "revision": "20160425", "title": "Google Monitoring API", - "description": "The Google Monitoring API lets you manage your monitoring data and configurations.", + "description": "Manages your Stackdriver monitoring data and configurations. Projects must be associated with a Stackdriver account, except for the following methods: [monitoredResourceDescriptors.list](v3/projects.monitoredResourceDescriptors/list), [monitoredResourceDescriptors.get](v3/projects.monitoredResourceDescriptors/get), [metricDescriptors.list](v3/projects.metricDescriptors/list), [metricDescriptors.get](v3/projects.metricDescriptors/get), and [timeSeries.list](v3/projects.timeSeries/list).", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -716,11 +716,11 @@ "properties": { "endTime": { "type": "string", - "description": "(required) The end of the interval. The interval includes this time." + "description": "Required. The end of the interval. The interval includes this time." }, "startTime": { "type": "string", - "description": "(optional) If omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`." + "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`." } } }, @@ -1134,12 +1134,12 @@ }, "interval.endTime": { "type": "string", - "description": "(required) The end of the interval. The interval includes this time.", + "description": "Required. The end of the interval. The interval includes this time.", "location": "query" }, "interval.startTime": { "type": "string", - "description": "(optional) If omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.", + "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.", "location": "query" } }, @@ -1165,7 +1165,7 @@ "id": "monitoring.projects.monitoredResourceDescriptors.list", "path": "v3/{+name}/monitoredResourceDescriptors", "httpMethod": "GET", - "description": "Lists monitored resource descriptors that match a filter.", + "description": "Lists monitored resource descriptors that match a filter. This method does not require a Stackdriver account.", "parameters": { "name": { "type": "string", @@ -1208,7 +1208,7 @@ "id": "monitoring.projects.monitoredResourceDescriptors.get", "path": "v3/{+name}", "httpMethod": "GET", - "description": "Gets a single monitored resource descriptor.", + "description": "Gets a single monitored resource descriptor. This method does not require a Stackdriver account.", "parameters": { "name": { "type": "string", @@ -1239,7 +1239,7 @@ "id": "monitoring.projects.metricDescriptors.list", "path": "v3/{+name}/metricDescriptors", "httpMethod": "GET", - "description": "Lists metric descriptors that match a filter.", + "description": "Lists metric descriptors that match a filter. This method does not require a Stackdriver account.", "parameters": { "name": { "type": "string", @@ -1282,7 +1282,7 @@ "id": "monitoring.projects.metricDescriptors.get", "path": "v3/{+name}", "httpMethod": "GET", - "description": "Gets a single metric descriptor.", + "description": "Gets a single metric descriptor. This method does not require a Stackdriver account.", "parameters": { "name": { "type": "string", @@ -1367,7 +1367,7 @@ "id": "monitoring.projects.timeSeries.list", "path": "v3/{+name}/timeSeries", "httpMethod": "GET", - "description": "Lists time series that match a filter.", + "description": "Lists time series that match a filter. This method does not require a Stackdriver account.", "parameters": { "name": { "type": "string", @@ -1383,12 +1383,12 @@ }, "interval.endTime": { "type": "string", - "description": "(required) The end of the interval. The interval includes this time.", + "description": "Required. The end of the interval. The interval includes this time.", "location": "query" }, "interval.startTime": { "type": "string", - "description": "(optional) If omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.", + "description": "If this value is omitted, the interval is a point in time, `endTime`. If `startTime` is present, it must be earlier than (less than) `endTime`. The interval begins after `startTime`—it does not include `startTime`.", "location": "query" }, "aggregation.alignmentPeriod": { diff --git a/etc/api/oauth2/v1/oauth2-api.json b/etc/api/oauth2/v1/oauth2-api.json index 9f388e9d23..3e7b53d160 100644 --- a/etc/api/oauth2/v1/oauth2-api.json +++ b/etc/api/oauth2/v1/oauth2-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/PQ_1F4pNNpN_zLZBj8ylJsEn9Cc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/uXLS8z-zc-3mqba8ZhXP5-JJ2ag\"", "discoveryVersion": "v1", "id": "oauth2:v1", "name": "oauth2", "version": "v1", - "revision": "20160330", + "revision": "20160822", "title": "Google OAuth2 API", "description": "Obtains end-user authorization grants for use with other Google APIs.", "ownerDomain": "google.com", diff --git a/etc/api/oauth2/v2/oauth2-api.json b/etc/api/oauth2/v2/oauth2-api.json index 838cec0578..2c12575c43 100644 --- a/etc/api/oauth2/v2/oauth2-api.json +++ b/etc/api/oauth2/v2/oauth2-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/VY5CxwtmcPmH-ruiSL2amW9TN0Q\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/jeziO2vCSIZL3x2MLvouc5ezDhQ\"", "discoveryVersion": "v1", "id": "oauth2:v2", "name": "oauth2", "version": "v2", - "revision": "20160330", + "revision": "20160822", "title": "Google OAuth2 API", "description": "Obtains end-user authorization grants for use with other Google APIs.", "ownerDomain": "google.com", diff --git a/etc/api/pagespeedonline/v1/pagespeedonline-api.json b/etc/api/pagespeedonline/v1/pagespeedonline-api.json index 99bb68e957..8e32fa16fc 100644 --- a/etc/api/pagespeedonline/v1/pagespeedonline-api.json +++ b/etc/api/pagespeedonline/v1/pagespeedonline-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/CJghsXEgZLiP1-h9GgP6hIBiCaU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/KODKRabYcLOfg1_fepQJ1JOlHnM\"", "discoveryVersion": "v1", "id": "pagespeedonline:v1", "name": "pagespeedonline", "version": "v1", - "revision": "20160306", + "revision": "20160811", "title": "PageSpeed Insights API", "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", "ownerDomain": "google.com", diff --git a/etc/api/pagespeedonline/v2/pagespeedonline-api.json b/etc/api/pagespeedonline/v2/pagespeedonline-api.json index f3abf6a0b8..8d4e16e669 100644 --- a/etc/api/pagespeedonline/v2/pagespeedonline-api.json +++ b/etc/api/pagespeedonline/v2/pagespeedonline-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/d7F7K6zTJF8Xit9ALBgCq_mDhJ8\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/r_eKVylBnS37WomzWJoiuxBk3nM\"", "discoveryVersion": "v1", "id": "pagespeedonline:v2", "name": "pagespeedonline", "version": "v2", - "revision": "20160306", + "revision": "20160811", "title": "PageSpeed Insights API", "description": "Analyzes the performance of a web page and provides tailored suggestions to make that page faster.", "ownerDomain": "google.com", diff --git a/etc/api/partners/v2/partners-api.json b/etc/api/partners/v2/partners-api.json index 36d321b56b..32767c8b53 100644 --- a/etc/api/partners/v2/partners-api.json +++ b/etc/api/partners/v2/partners-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/IsLtDjyeCcVcrLheR4Lh75k5EO4\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/IsLtDjyeCcVcrLheR4Lh75k5EO4\"", "discoveryVersion": "v1", "id": "partners:v2", "name": "partners", diff --git a/etc/api/people/v1/people-api.json b/etc/api/people/v1/people-api.json index 07fbc1b51c..24e6910b82 100644 --- a/etc/api/people/v1/people-api.json +++ b/etc/api/people/v1/people-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/tzwJjoO4XDFgwNQjmiM8lPsFMzA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/tzwJjoO4XDFgwNQjmiM8lPsFMzA\"", "discoveryVersion": "v1", "id": "people:v1", "name": "people", diff --git a/etc/api/playmoviespartner/v1/playmoviespartner-api.json b/etc/api/playmoviespartner/v1/playmoviespartner-api.json index 9f90dff0a9..c5d956f4c2 100644 --- a/etc/api/playmoviespartner/v1/playmoviespartner-api.json +++ b/etc/api/playmoviespartner/v1/playmoviespartner-api.json @@ -1,13 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/z6DDJOj93G2k5mJ-2ciqK3fHbRY\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/nOdrkDPVE_ecVVN74uINxtcznYM\"", "discoveryVersion": "v1", "id": "playmoviespartner:v1", "name": "playmoviespartner", + "canonicalName": "Play Movies", "version": "v1", - "revision": "20150812", + "revision": "20160518", "title": "Google Play Movies Partner API", - "description": "Lets Google Play Movies Partners get the delivery status of their titles.", + "description": "Gets the delivery status of titles for Google Play Movies Partners.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -110,29 +111,15 @@ } }, "schemas": { - "ListAvailsResponse": { - "id": "ListAvailsResponse", - "type": "object", - "description": "Response to the 'ListAvails' method.", - "properties": { - "avails": { - "type": "array", - "description": "List of Avails that match the request criteria.", - "items": { - "$ref": "Avail" - } - }, - "nextPageToken": { - "type": "string", - "description": "See _List methods rules_ for info about this field." - } - } - }, "Avail": { "id": "Avail", "type": "object", "description": "An Avail describes the Availability Window of a specific Edit in a given country, which means the period Google is allowed to sell or rent the Edit. Avails are exposed in EMA format Version 1.6b (available at http://www.movielabs.com/md/avails/) Studios can see the Avails for the Titles they own. Post-production houses cannot see any Avails.", "properties": { + "availId": { + "type": "string", + "description": "ID internally generated by Google to uniquely identify an Avail. Not part of EMA Specs." + }, "displayName": { "type": "string", "description": "The name of the studio that owns the Edit referred in the Avail. This is the equivalent of `studio_name` in other resources, but it follows the EMA nomenclature. Example: \"Google Films\"." @@ -152,7 +139,8 @@ "TITLE_TYPE_UNSPECIFIED", "MOVIE", "SEASON", - "EPISODE" + "EPISODE", + "BUNDLE" ] }, "seriesTitleInternalAlias": { @@ -186,7 +174,8 @@ "LICENSE_TYPE_UNSPECIFIED", "EST", "VOD", - "SVOD" + "SVOD", + "POEST" ] }, "formatProfile": { @@ -283,6 +272,29 @@ } } }, + "ListAvailsResponse": { + "id": "ListAvailsResponse", + "type": "object", + "description": "Response to the 'ListAvails' method.", + "properties": { + "avails": { + "type": "array", + "description": "List of Avails that match the request criteria.", + "items": { + "$ref": "Avail" + } + }, + "nextPageToken": { + "type": "string", + "description": "See _List methods rules_ for info about this field." + }, + "totalSize": { + "type": "integer", + "description": "See _List methods rules_ for more information about this field.", + "format": "int32" + } + } + }, "Order": { "id": "Order", "type": "object", @@ -314,7 +326,8 @@ "TITLE_TYPE_UNSPECIFIED", "MOVIE", "SEASON", - "EPISODE" + "EPISODE", + "BUNDLE" ] }, "name": { @@ -356,7 +369,8 @@ "ORDER_STATUS_OPEN_ORDER", "ORDER_STATUS_NOT_AVAILABLE", "ORDER_STATUS_AWAITING_REDELIVERY", - "ORDER_STATUS_READY_FOR_QC" + "ORDER_STATUS_READY_FOR_QC", + "ORDER_STATUS_FILE_PROCESSING" ] }, "rejectionNote": { @@ -430,6 +444,11 @@ "nextPageToken": { "type": "string", "description": "See _List methods rules_ for info about this field." + }, + "totalSize": { + "type": "integer", + "description": "See _List methods rules_ for more information about this field.", + "format": "int32" } } }, @@ -496,7 +515,8 @@ "TITLE_TYPE_UNSPECIFIED", "MOVIE", "SEASON", - "EPISODE" + "EPISODE", + "BUNDLE" ] }, "name": { @@ -573,6 +593,193 @@ "nextPageToken": { "type": "string", "description": "See _List methods rules_ for info about this field." + }, + "totalSize": { + "type": "integer", + "description": "See _List methods rules_ for more information about this field.", + "format": "int32" + } + } + }, + "Component": { + "id": "Component", + "type": "object", + "description": "A Component is an element (audio, video, subtitle, artwork, trailer, etc...) that is used in a set of ExperienceLocales. A Component is owned by a Studio and managed either by the Studio itself or by one Post-Production House. Each Component is identified by a `component_id` and its `type`.", + "properties": { + "componentId": { + "type": "string", + "description": "ID internally generated by Google to uniquely identify the Component. Example: 'wteyrc_647xc'" + }, + "type": { + "type": "string", + "description": "Type of the Component. Example: AUDIO_51", + "enum": [ + "COMPONENT_TYPE_UNSPECIFIED", + "VIDEO", + "AUDIO_20", + "AUDIO_51", + "SUBTITLE", + "ARTWORK", + "METADATA" + ] + }, + "elIds": { + "type": "array", + "description": "IDs internally generated by Google to uniquely identify the ExperienceLocales for which the Component is used. Example: 'KRZiVjY9h7t'", + "items": { + "type": "string" + } + }, + "language": { + "type": "string", + "description": "Language of the component, using the \"BCP 47\" format. Examples: \"en\", \"en-US\", \"es\", \"es-419\"." + }, + "titleLevelEidrs": { + "type": "array", + "description": "List of Title-level EIDR IDs. Example: \"10.5240/1489-49A2-3956-4B2D-FE16-5\".", + "items": { + "type": "string" + } + }, + "editLevelEidrs": { + "type": "array", + "description": "List of Edit-level EIDR IDs. Example: \"10.5240/1489-49A2-3956-4B2D-FE16-6\".", + "items": { + "type": "string" + } + }, + "altCutIds": { + "type": "array", + "description": "List of Alternative Cut IDs, sometimes available in lieu of the main Edit-level EIDR IDs. This is not an EIDR ID, but a Partner-provided ID. Example: \"206346_79838\".", + "items": { + "type": "string" + } + }, + "customIds": { + "type": "array", + "description": "List of custom IDs (defined by the partner) linked to the ExperienceLocale using this Component. Example: \"R86241\"", + "items": { + "type": "string" + } + }, + "componentDetailType": { + "type": "string", + "description": "Detail about the type of the Component.", + "enum": [ + "COMPONENT_DETAIL_TYPE_UNSPECIFIED", + "COMPONENT_DETAIL_TYPE_NORMAL", + "COMPONENT_DETAIL_TYPE_POSTER", + "COMPONENT_DETAIL_TYPE_PRIMARY", + "COMPONENT_DETAIL_TYPE_FORCED", + "COMPONENT_DETAIL_TYPE_DUBBED", + "COMPONENT_DETAIL_TYPE_SDH" + ] + }, + "playableUnitType": { + "type": "string", + "description": "Type of the playable unit for which the Component is intended.", + "enum": [ + "PLAYABLE_UNIT_TYPE_UNSPECIFIED", + "PLAYABLE_UNIT_TYPE_FEATURE", + "PLAYABLE_UNIT_TYPE_TRAILER", + "PLAYBLE_UNIT_TYPE_BONUS_CONTENT" + ] + }, + "status": { + "type": "string", + "description": "High-level status of the Component.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_APPROVED", + "STATUS_FAILED", + "STATUS_PROCESSING", + "STATUS_UNFULFILLED", + "STATUS_NOT_AVAILABLE" + ] + }, + "statusDetail": { + "type": "string", + "description": "Detailed status of the Component", + "enum": [ + "COMPONENT_STATUS_UNSPECIFIED", + "COMPONENT_STATUS_QC_APPROVED", + "COMPONENT_STATUS_QC_REJECTION", + "COMPONENT_STATUS_FILE_REJECTION", + "COMPONENT_STATUS_FILE_PROCESSING", + "COMPONENT_STATUS_READY_FOR_QC" + ] + }, + "rejectionNote": { + "type": "string", + "description": "Notes explaining why a Component has been rejected." + }, + "approvedTime": { + "type": "string", + "description": "Timestamp when the Component was approved." + }, + "name": { + "type": "string", + "description": "Default Edit name, usually in the language of the country of origin. Example: \"Googlers, The\"." + }, + "processingErrors": { + "type": "array", + "description": "Processing errors during XML file parsing. Example: 'Invalid input file'", + "items": { + "type": "string" + } + }, + "priority": { + "type": "number", + "description": "Component priority, as defined by Google. The higher the value, the higher the priority.", + "format": "double" + }, + "receivedTime": { + "type": "string", + "description": "Timestamp when the Component was received." + }, + "filename": { + "type": "string", + "description": "File name of the Component when delivered." + }, + "studioName": { + "type": "string", + "description": "Name of the studio that owns the Component." + }, + "pphName": { + "type": "string", + "description": "Name of the post-production house that manages the Component." + }, + "normalizedPriority": { + "type": "string", + "description": "A simpler representation of the priority.", + "enum": [ + "NORMALIZED_PRIORITY_UNSPECIFIED", + "LOW_PRIORITY", + "HIGH_PRIORITY" + ] + } + } + }, + "ListComponentsResponse": { + "id": "ListComponentsResponse", + "type": "object", + "description": "Response to the 'ListComponents' method.", + "properties": { + "components": { + "type": "array", + "description": "List of Components that match the request criteria.", + "items": { + "$ref": "Component" + } + }, + "nextPageToken": { + "type": "string", + "description": "See _List methods rules_ for info about this field." + }, + "totalSize": { + "type": "integer", + "description": "See _List methods rules_ for more information about this field.", + "format": "int32" } } }, @@ -608,7 +815,8 @@ "TITLE_TYPE_UNSPECIFIED", "MOVIE", "SEASON", - "EPISODE" + "EPISODE", + "BUNDLE" ] }, "name": { @@ -713,6 +921,11 @@ "nextPageToken": { "type": "string", "description": "See 'List methods rules' for info about this field." + }, + "totalSize": { + "type": "integer", + "description": "See _List methods rules_ for more information about this field.", + "format": "int32" } } } @@ -722,6 +935,36 @@ "resources": { "avails": { "methods": { + "get": { + "id": "playmoviespartner.accounts.avails.get", + "path": "v1/accounts/{accountId}/avails/{availId}", + "httpMethod": "GET", + "description": "Get an Avail given its avail group id and avail id.", + "parameters": { + "accountId": { + "type": "string", + "description": "REQUIRED. See _General rules_ for more information about this field.", + "required": true, + "location": "path" + }, + "availId": { + "type": "string", + "description": "REQUIRED. Avail ID.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "availId" + ], + "response": { + "$ref": "Avail" + }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ] + }, "list": { "id": "playmoviespartner.accounts.avails.list", "path": "v1/accounts/{accountId}/avails", @@ -759,7 +1002,7 @@ }, "title": { "type": "string", - "description": "Filter Avails that match a case-insensitive substring of the default Title name.", + "description": "Filter that matches Avails with a `title_internal_alias`, `series_title_internal_alias`, `season_title_internal_alias`, or `episode_title_internal_alias` that contains the given case-insensitive title.", "location": "query" }, "territories": { @@ -770,7 +1013,7 @@ }, "altId": { "type": "string", - "description": "Filter Avails that match a case-insensitive, partner-specific custom id.", + "description": "Filter Avails that match a case-insensitive, partner-specific custom id. NOTE: this field is deprecated and will be removed on V2; `alt_ids` should be used instead.", "location": "query" }, "videoIds": { @@ -778,6 +1021,12 @@ "description": "Filter Avails that match any of the given `video_id`s.", "repeated": true, "location": "query" + }, + "altIds": { + "type": "string", + "description": "Filter Avails that match (case-insensitive) any of the given partner-specific custom ids.", + "repeated": true, + "location": "query" } }, "parameterOrder": [ @@ -861,7 +1110,7 @@ }, "name": { "type": "string", - "description": "Filter Orders that match a title name (case-insensitive, sub-string match).", + "description": "Filter that matches Orders with a `name`, `show`, `season` or `episode` that contains the given case-insensitive name.", "location": "query" }, "status": { @@ -882,6 +1131,12 @@ "type": "string", "description": "Filter Orders that match a case-insensitive, partner-specific custom id.", "location": "query" + }, + "videoIds": { + "type": "string", + "description": "Filter Orders that match any of the given `video_id`s.", + "repeated": true, + "location": "query" } }, "parameterOrder": [ @@ -1010,6 +1265,167 @@ } } }, + "components": { + "methods": { + "list": { + "id": "playmoviespartner.accounts.components.list", + "path": "v1/accounts/{accountId}/components", + "httpMethod": "GET", + "description": "List Components owned or managed by the partner. See _Authentication and Authorization rules_ and _List methods rules_ for more information about this method.", + "parameters": { + "accountId": { + "type": "string", + "description": "REQUIRED. See _General rules_ for more information about this field.", + "required": true, + "location": "path" + }, + "pageSize": { + "type": "integer", + "description": "See _List methods rules_ for info about this field.", + "format": "int32", + "location": "query" + }, + "pageToken": { + "type": "string", + "description": "See _List methods rules_ for info about this field.", + "location": "query" + }, + "pphNames": { + "type": "string", + "description": "See _List methods rules_ for info about this field.", + "repeated": true, + "location": "query" + }, + "studioNames": { + "type": "string", + "description": "See _List methods rules_ for info about this field.", + "repeated": true, + "location": "query" + }, + "titleLevelEidr": { + "type": "string", + "description": "Filter Components that match a given title-level EIDR.", + "location": "query" + }, + "editLevelEidr": { + "type": "string", + "description": "Filter Components that match a given edit-level EIDR.", + "location": "query" + }, + "status": { + "type": "string", + "description": "Filter Components that match one of the given status.", + "enum": [ + "STATUS_UNSPECIFIED", + "STATUS_APPROVED", + "STATUS_FAILED", + "STATUS_PROCESSING", + "STATUS_UNFULFILLED", + "STATUS_NOT_AVAILABLE" + ], + "repeated": true, + "location": "query" + }, + "customId": { + "type": "string", + "description": "Filter Components that match a case-insensitive partner-specific custom id.", + "location": "query" + }, + "inventoryId": { + "type": "string", + "description": "InventoryID available in Common Manifest.", + "location": "query" + }, + "presentationId": { + "type": "string", + "description": "PresentationID available in Common Manifest.", + "location": "query" + }, + "playableSequenceId": { + "type": "string", + "description": "PlayableSequenceID available in Common Manifest.", + "location": "query" + }, + "elId": { + "type": "string", + "description": "Experience ID, as defined by Google.", + "location": "query" + }, + "altCutId": { + "type": "string", + "description": "Filter Components that match a case-insensitive, partner-specific Alternative Cut ID.", + "location": "query" + }, + "filename": { + "type": "string", + "description": "Filter Components that match a case-insensitive substring of the physical name of the delivered file.", + "location": "query" + } + }, + "parameterOrder": [ + "accountId" + ], + "response": { + "$ref": "ListComponentsResponse" + }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ] + } + }, + "resources": { + "type": { + "methods": { + "get": { + "id": "playmoviespartner.accounts.components.type.get", + "path": "v1/accounts/{accountId}/components/{componentId}/type/{type}", + "httpMethod": "GET", + "description": "Get a Component given its id.", + "parameters": { + "accountId": { + "type": "string", + "description": "REQUIRED. See _General rules_ for more information about this field.", + "required": true, + "location": "path" + }, + "componentId": { + "type": "string", + "description": "REQUIRED. Component ID.", + "required": true, + "location": "path" + }, + "type": { + "type": "string", + "description": "REQUIRED. Component Type.", + "required": true, + "enum": [ + "COMPONENT_TYPE_UNSPECIFIED", + "VIDEO", + "AUDIO_20", + "AUDIO_51", + "SUBTITLE", + "ARTWORK", + "METADATA" + ], + "location": "path" + } + }, + "parameterOrder": [ + "accountId", + "componentId", + "type" + ], + "response": { + "$ref": "Component" + }, + "scopes": [ + "https://www.googleapis.com/auth/playmovies_partner.readonly" + ] + } + } + } + } + }, "storeInfos": { "methods": { "list": { @@ -1060,7 +1476,7 @@ }, "name": { "type": "string", - "description": "Filter StoreInfos that match a case-insensitive substring of the default name.", + "description": "Filter that matches StoreInfos with a `name` or `show_name` that contains the given case-insensitive name.", "location": "query" }, "videoIds": { @@ -1068,6 +1484,18 @@ "description": "Filter StoreInfos that match any of the given `video_id`s.", "repeated": true, "location": "query" + }, + "mids": { + "type": "string", + "description": "Filter StoreInfos that match any of the given `mid`s.", + "repeated": true, + "location": "query" + }, + "seasonIds": { + "type": "string", + "description": "Filter StoreInfos that match any of the given `season_id`s.", + "repeated": true, + "location": "query" } }, "parameterOrder": [ diff --git a/etc/api/plus/v1/plus-api.json b/etc/api/plus/v1/plus-api.json index 7b22ac09aa..8429758bc6 100644 --- a/etc/api/plus/v1/plus-api.json +++ b/etc/api/plus/v1/plus-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/2vvSQyuQJOh4ikgDsqf2pMot4NU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/TeeAgcE4J1LHdCvvLCSjSzS5m2Q\"", "discoveryVersion": "v1", "id": "plus:v1", "name": "plus", "version": "v1", - "revision": "20160406", + "revision": "20160907", "title": "Google+ API", - "description": "The Google+ API enables developers to build on top of the Google+ platform.", + "description": "Builds on top of the Google+ platform.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/plusdomains/v1/plusdomains-api.json b/etc/api/plusdomains/v1/plusdomains-api.json index b709330afe..57904bb3dd 100644 --- a/etc/api/plusdomains/v1/plusdomains-api.json +++ b/etc/api/plusdomains/v1/plusdomains-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Tn35i12A9GyQ0AejqKgEYZmxqyc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/7YJuYD52NlCzae2gKU4T04XG4FA\"", "discoveryVersion": "v1", "id": "plusDomains:v1", "name": "plusDomains", "version": "v1", - "revision": "20160406", + "revision": "20160907", "title": "Google+ Domains API", - "description": "The Google+ API enables developers to build on top of the Google+ platform.", + "description": "Builds on top of the Google+ platform for Google Apps Domains.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/prediction/v1.2/prediction-api.json b/etc/api/prediction/v1.2/prediction-api.json index 28ee6aa731..d799682776 100644 --- a/etc/api/prediction/v1.2/prediction-api.json +++ b/etc/api/prediction/v1.2/prediction-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/uOPG2v5jeVLJtny04P49X_F7TJc\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/y6-9S-Lx_Izdv2KpEj-E5-XRo7s\"", "discoveryVersion": "v1", "id": "prediction:v1.2", "name": "prediction", "version": "v1.2", - "revision": "20160304", + "revision": "20160511", "title": "Prediction API", "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", "ownerDomain": "google.com", diff --git a/etc/api/prediction/v1.3/prediction-api.json b/etc/api/prediction/v1.3/prediction-api.json index 778311800d..0b549e6ee8 100644 --- a/etc/api/prediction/v1.3/prediction-api.json +++ b/etc/api/prediction/v1.3/prediction-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/aaVIo31ii7i6px6zykQ4WWwkpqo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/cYlCW_mo2Sbrsx6lIgVnF3W-L9s\"", "discoveryVersion": "v1", "id": "prediction:v1.3", "name": "prediction", "version": "v1.3", - "revision": "20160304", + "revision": "20160511", "title": "Prediction API", "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", "ownerDomain": "google.com", diff --git a/etc/api/prediction/v1.4/prediction-api.json b/etc/api/prediction/v1.4/prediction-api.json index 7ee516d5d4..a18e0f7802 100644 --- a/etc/api/prediction/v1.4/prediction-api.json +++ b/etc/api/prediction/v1.4/prediction-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/YV3parOl1hNGwmeOYq30KREjphM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/UWwWpdkeaK4ZVhf_4VB1iBPZ3Lo\"", "discoveryVersion": "v1", "id": "prediction:v1.4", "name": "prediction", "version": "v1.4", - "revision": "20160304", + "revision": "20160511", "title": "Prediction API", "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", "ownerDomain": "google.com", diff --git a/etc/api/prediction/v1.5/prediction-api.json b/etc/api/prediction/v1.5/prediction-api.json index d43fee860f..c9b3e73f40 100644 --- a/etc/api/prediction/v1.5/prediction-api.json +++ b/etc/api/prediction/v1.5/prediction-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/gF5ZfFPL3IKTqBN1E3xrLTL2wHA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/B0qrlmHp5fl-zt3tPCgucMogpLQ\"", "discoveryVersion": "v1", "id": "prediction:v1.5", "name": "prediction", "version": "v1.5", - "revision": "20160304", + "revision": "20160511", "title": "Prediction API", "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", "ownerDomain": "google.com", diff --git a/etc/api/prediction/v1.6/prediction-api.json b/etc/api/prediction/v1.6/prediction-api.json index 7a57b126c9..544038b2c8 100644 --- a/etc/api/prediction/v1.6/prediction-api.json +++ b/etc/api/prediction/v1.6/prediction-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Rb8Il9CxYvuIPXx3em3nY6uZPfg\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/YsFEJnq5UeoemkjE7DFhTi6r2Gw\"", "discoveryVersion": "v1", "id": "prediction:v1.6", "name": "prediction", "version": "v1.6", - "revision": "20160304", + "revision": "20160511", "title": "Prediction API", "description": "Lets you access a cloud hosted machine learning service that makes it easy to build smart apps", "ownerDomain": "google.com", @@ -69,6 +69,9 @@ "auth": { "oauth2": { "scopes": { + "https://www.googleapis.com/auth/cloud-platform": { + "description": "View and manage your data across Google Cloud Platform services" + }, "https://www.googleapis.com/auth/devstorage.full_control": { "description": "Manage your data and permissions in Google Cloud Storage" }, @@ -549,6 +552,7 @@ "$ref": "Output" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] } @@ -583,6 +587,7 @@ "$ref": "Analyze" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] }, @@ -610,6 +615,7 @@ "id" ], "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] }, @@ -640,6 +646,7 @@ "$ref": "Insert2" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] }, @@ -666,6 +673,7 @@ "$ref": "Insert2" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/devstorage.full_control", "https://www.googleapis.com/auth/devstorage.read_only", "https://www.googleapis.com/auth/devstorage.read_write", @@ -704,6 +712,7 @@ "$ref": "List" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] }, @@ -737,6 +746,7 @@ "$ref": "Output" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] }, @@ -770,6 +780,7 @@ "$ref": "Insert2" }, "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", "https://www.googleapis.com/auth/prediction" ] } diff --git a/etc/api/proximitybeacon/v1beta1/proximitybeacon-api.json b/etc/api/proximitybeacon/v1beta1/proximitybeacon-api.json index 79dc25eda9..83e9bd3a9d 100644 --- a/etc/api/proximitybeacon/v1beta1/proximitybeacon-api.json +++ b/etc/api/proximitybeacon/v1beta1/proximitybeacon-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/yXdK3yTv0tZKHHrFGHjFzQPnyUw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/InJfaYgEs4kvxVpfe1cZDPrjhv0\"", "discoveryVersion": "v1", "id": "proximitybeacon:v1beta1", "name": "proximitybeacon", "version": "v1beta1", - "revision": "20150729", + "revision": "20160429", "title": "Google Proximity Beacon API", - "description": "This API provides services to register, manage, index, and search beacons.", + "description": "Registers, manages, indexes, and searches beacons.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -101,6 +101,15 @@ "location": "query" } }, + "auth": { + "oauth2": { + "scopes": { + "https://www.googleapis.com/auth/userlocation.beacon.registry": { + "description": "View and modify your beacons" + } + } + } + }, "schemas": { "Beacon": { "id": "Beacon", @@ -113,7 +122,7 @@ }, "advertisedId": { "$ref": "AdvertisedId", - "description": "The identifier of a beacon as advertised by it. This field must be populated when registering. It may be empty when updating a beacon record because it is ignored in updates." + "description": "The identifier of a beacon as advertised by it. This field must be populated when registering. It may be empty when updating a beacon record because it is ignored in updates. When registering a beacon that broadcasts Eddystone-EID, this field should contain a \"stable\" Eddystone-UID that identifies the beacon and links it to its attachments. The stable Eddystone-UID is only used for administering the beacon." }, "status": { "type": "string", @@ -158,6 +167,15 @@ "additionalProperties": { "type": "string" } + }, + "ephemeralIdRegistration": { + "$ref": "EphemeralIdRegistration", + "description": "Write-only registration parameters for beacons using Eddystone-EID (remotely resolved ephemeral ID) format. This information will not be populated in API responses. When submitting this data, the `advertised_id` field must contain an ID of type Eddystone-UID. Any other ID type will result in an error." + }, + "provisioningKey": { + "type": "string", + "description": "Some beacons may require a user to provide an authorization key before changing any of its configuration (e.g. broadcast frames, transmit power). This field provides a place to store and control access to that key. This field is populated in responses to `GET /v1beta1/beacons/3!beaconId` from users with write access to the given beacon. That is to say: If the user is authorized to write the beacon's confidential data in the service, the service considers them authorized to configure the beacon. Note that this key grants nothing on the service, only on the beacon itself.", + "format": "byte" } } }, @@ -173,7 +191,8 @@ "TYPE_UNSPECIFIED", "EDDYSTONE", "IBEACON", - "ALTBEACON" + "ALTBEACON", + "EDDYSTONE_EID" ] }, "id": { @@ -186,7 +205,7 @@ "LatLng": { "id": "LatLng", "type": "object", - "description": "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): \"\"\"Wrapsdecimal degrees longitude to [-180.0, 180.0].\"\"\" q, r = divmod(longitude, 360.0) if r \u003e 180.0 or (r == 180.0 and q \u003c= -1.0): return r - 360.0 return r def NormalizeLatLng(latitude, longitude): \"\"\"Wraps decimal degrees latitude and longitude to [-180.0, 180.0] and [-90.0, 90.0], respectively.\"\"\" r = latitude % 360.0 if 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)", + "description": "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 \u003e 180.0 or (r == 180.0 and q \u003c= -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 = 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)", "properties": { "latitude": { "type": "number", @@ -211,6 +230,43 @@ } } }, + "EphemeralIdRegistration": { + "id": "EphemeralIdRegistration", + "type": "object", + "description": "Write-only registration parameters for beacons using Eddystone-EID format. Two ways of securely registering an Eddystone-EID beacon with the service are supported: 1. Perform an ECDH key exchange via this API, including a previous call to `GET /v1beta1/eidparams`. In this case the fields `beacon_ecdh_public_key` and `service_ecdh_public_key` should be populated and `beacon_identity_key` should not be populated. This method ensures that only the two parties in the ECDH key exchange can compute the identity key, which becomes a secret between them. 2. Derive or obtain the beacon's identity key via other secure means (perhaps an ECDH key exchange between the beacon and a mobile device or any other secure method), and then submit the resulting identity key to the service. In this case `beacon_identity_key` field should be populated, and neither of `beacon_ecdh_public_key` nor `service_ecdh_public_key` fields should be. The security of this method depends on how securely the parties involved (in particular the bluetooth client) handle the identity key, and obviously on how securely the identity key was generated. See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", + "properties": { + "beaconEcdhPublicKey": { + "type": "string", + "description": "The beacon's public key used for the Elliptic curve Diffie-Hellman key exchange. When this field is populated, `service_ecdh_public_key` must also be populated, and `beacon_identity_key` must not be.", + "format": "byte" + }, + "serviceEcdhPublicKey": { + "type": "string", + "description": "The service's public key used for the Elliptic curve Diffie-Hellman key exchange. When this field is populated, `beacon_ecdh_public_key` must also be populated, and `beacon_identity_key` must not be.", + "format": "byte" + }, + "beaconIdentityKey": { + "type": "string", + "description": "The private key of the beacon. If this field is populated, `beacon_ecdh_public_key` and `service_ecdh_public_key` must not be populated.", + "format": "byte" + }, + "rotationPeriodExponent": { + "type": "integer", + "description": "Indicates the nominal period between each rotation of the beacon's ephemeral ID. \"Nominal\" because the beacon should randomize the actual interval. See [the spec at github](https://github.com/google/eddystone/tree/master/eddystone-eid) for details. This value corresponds to a power-of-two scaler on the beacon's clock: when the scaler value is K, the beacon will begin broadcasting a new ephemeral ID on average every 2^K seconds.", + "format": "uint32" + }, + "initialClockValue": { + "type": "string", + "description": "The initial clock value of the beacon. The beacon's clock must have begun counting at this value immediately prior to transmitting this value to the resolving service. Significant delay in transmitting this value to the service risks registration or resolution failures. If a value is not provided, the default is zero.", + "format": "uint64" + }, + "initialEid": { + "type": "string", + "description": "An initial ephemeral ID calculated using the clock value submitted as `initial_clock_value`, and the secret key generated by the Diffie-Hellman key exchange using `service_ecdh_public_key` and `service_ecdh_public_key`. This initial EID value will be used by the service to confirm that the key exchange process was successful.", + "format": "byte" + } + } + }, "Empty": { "id": "Empty", "type": "object", @@ -319,6 +375,28 @@ } } }, + "EphemeralIdRegistrationParams": { + "id": "EphemeralIdRegistrationParams", + "type": "object", + "description": "Information a client needs to provision and register beacons that broadcast Eddystone-EID format beacon IDs, using Elliptic curve Diffie-Hellman key exchange. See [the Eddystone specification](https://github.com/google/eddystone/tree/master/eddystone-eid) at GitHub.", + "properties": { + "serviceEcdhPublicKey": { + "type": "string", + "description": "The beacon service's public key for use by a beacon to derive its Identity Key using Elliptic Curve Diffie-Hellman key exchange.", + "format": "byte" + }, + "minRotationPeriodExponent": { + "type": "integer", + "description": "Indicates the minimum rotation period supported by the service. See EddystoneEidRegistration.rotation_period_exponent", + "format": "uint32" + }, + "maxRotationPeriodExponent": { + "type": "integer", + "description": "Indicates the maximum rotation period supported by the service. See EddystoneEidRegistration.rotation_period_exponent", + "format": "uint32" + } + } + }, "ListDiagnosticsResponse": { "id": "ListDiagnosticsResponse", "type": "object", @@ -344,7 +422,7 @@ "properties": { "beaconName": { "type": "string", - "description": "Resource name of the beacon." + "description": "Resource name of the beacon. For Eddystone-EID beacons, this may be the beacon's current EID, or the beacon's \"stable\" Eddystone-UID." }, "estimatedLowBatteryDate": { "$ref": "Date", @@ -372,21 +450,21 @@ "Date": { "id": "Date", "type": "object", - "description": "Represents a whole calendar date, e.g. date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the Proleptic Gregorian Calendar. The day may be 0 to represent a year and month where the day is not significant, e.g. credit card expiration date. The year may be 0 to represent a month and day independent of year, e.g. anniversary date. Related types are [google.type.TimeOfDay][] and `google.protobuf.Timestamp`.", + "description": "Represents a whole calendar date, e.g. date of birth. The time of day and time zone are either specified elsewhere or are not significant. The date is relative to the Proleptic Gregorian Calendar. The day may be 0 to represent a year and month where the day is not significant, e.g. credit card expiration date. The year may be 0 to represent a month and day independent of year, e.g. anniversary date. Related types are google.type.TimeOfDay and `google.protobuf.Timestamp`.", "properties": { "year": { "type": "integer", - "description": "Year of date. Must be from 1 to 9,999, or 0 if specifying a date without a year.", + "description": "Year of date. Must be from 1 to 9999, or 0 if specifying a date without a year.", "format": "int32" }, "month": { "type": "integer", - "description": "Month of year of date. Must be from 1 to 12.", + "description": "Month of year. Must be from 1 to 12.", "format": "int32" }, "day": { "type": "integer", - "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not sigificant.", + "description": "Day of month. Must be from 1 to 31 and valid for the year and month, or 0 if specifying a year/month where the day is not significant.", "format": "int32" } } @@ -419,7 +497,7 @@ "properties": { "advertisedId": { "$ref": "AdvertisedId", - "description": "The ID advertised by the beacon the client has encountered. Required." + "description": "The ID advertised by the beacon the client has encountered. Clients may submit an Eddystone-EID `advertised_id`. If the client is not authorized to resolve the given Eddystone-EID, no data will be returned for that beacon. Required." }, "telemetry": { "type": "string", @@ -428,7 +506,7 @@ }, "timestampMs": { "type": "string", - "description": "Time when the beacon was observed. Being sourced from a mobile device, this time may be suspect." + "description": "Time when the beacon was observed." } } }, @@ -459,10 +537,6 @@ "type": "string", "description": "The name under which the beacon is registered." }, - "description": { - "type": "string", - "description": "Free text used to identify or describe the beacon in a registered establishment. For example: \"entrance\", \"room 101\", etc. May be empty." - }, "attachments": { "type": "array", "description": "Attachments matching the type(s) requested. May be empty if no attachment types were requested, or if none matched.", @@ -496,26 +570,41 @@ "id": "proximitybeacon.beacons.register", "path": "v1beta1/beacons:register", "httpMethod": "POST", - "description": "Registers a previously unregistered beacon given its `advertisedId`. These IDs are unique within the system. An ID can be registered only once.", + "description": "Registers a previously unregistered beacon given its `advertisedId`. These IDs are unique within the system. An ID can be registered only once. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", + "parameters": { + "projectId": { + "type": "string", + "description": "The project id of the project the beacon will be registered to. If the project id is not specified then the project making the request is used. Optional.", + "location": "query" + } + }, "request": { "$ref": "Beacon" }, "response": { "$ref": "Beacon" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "decommission": { "id": "proximitybeacon.beacons.decommission", "path": "v1beta1/{+beaconName}:decommission", "httpMethod": "POST", - "description": "Decommissions the specified beacon in the service. This beacon will no longer be returned from `beaconinfo.getforobserved`. This operation is permanent -- you will not be able to re-register a beacon with this ID again.", + "description": "Decommissions the specified beacon in the service. This beacon will no longer be returned from `beaconinfo.getforobserved`. This operation is permanent -- you will not be able to re-register a beacon with this ID again. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "Beacon that should be decommissioned. Required.", + "description": "Beacon that should be decommissioned. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID of the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the beacon to decommission. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -523,20 +612,28 @@ ], "response": { "$ref": "Empty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "get": { "id": "proximitybeacon.beacons.get", "path": "v1beta1/{+beaconName}", "httpMethod": "GET", - "description": "Returns detailed information about the specified beacon.", + "description": "Returns detailed information about the specified beacon. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** or **Can edit** permissions in the Google Developers Console project. Requests may supply an Eddystone-EID beacon name in the form: `beacons/4!beaconId` where the `beaconId` is the base16 ephemeral ID broadcast by the beacon. The returned `Beacon` object will contain the beacon's stable Eddystone-UID. Clients not authorized to resolve the beacon's ephemeral Eddystone-EID broadcast will receive an error.", "parameters": { "beaconName": { "type": "string", - "description": "Beacon that is requested.", + "description": "Resource name of this beacon. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the beacon to request. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -544,17 +641,20 @@ ], "response": { "$ref": "Beacon" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "list": { "id": "proximitybeacon.beacons.list", "path": "v1beta1/beacons", "httpMethod": "GET", - "description": "Searches the beacon registry for beacons that match the given search criteria. Only those beacons that the client has permission to list will be returned.", + "description": "Searches the beacon registry for beacons that match the given search criteria. Only those beacons that the client has permission to list will be returned. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "q": { "type": "string", - "description": "Filter query string that supports the following field filters: * `description:\"\"` For example: `description:\"Room 3\"` Returns beacons whose description matches tokens in the string \"Room 3\" (not necessarily that exact string). The string must be double-quoted. * `status:` For example: `status:active` Returns beacons whose status matches the given value. Values must be one of the Beacon.Status enum values (case insensitive). Accepts multiple filters which will be combined with OR logic. * `stability:` For example: `stability:mobile` Returns beacons whose expected stability matches the given value. Values must be one of the Beacon.Stability enum values (case insensitive). Accepts multiple filters which will be combined with OR logic. * `place_id:\"\"` For example: `place_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"` Returns beacons explicitly registered at the given place, expressed as a Place ID obtained from [Google Places API](/places/place-id). Does not match places inside the given place. Does not consider the beacon's actual location (which may be different from its registered place). Accepts multiple filters that will be combined with OR logic. The place ID must be double-quoted. * `registration_time[|=]` For example: `registration_time\u003e=1433116800` Returns beacons whose registration time matches the given filter. Supports the operators: , =. Timestamp must be expressed as an integer number of seconds since midnight January 1, 1970 UTC. Accepts at most two filters that will be combined with AND logic, to support \"between\" semantics. If more than two are supplied, the latter ones are ignored. * `lat: lng: radius:` For example: `lat:51.1232343 lng:-1.093852 radius:1000` Returns beacons whose registered location is within the given circle. When any of these fields are given, all are required. Latitude and longitude must be decimal degrees between -90.0 and 90.0 and between -180.0 and 180.0 respectively. Radius must be an integer number of meters less than 1,000,000 (1000 km). * `property:\"=\"` For example: `property:\"battery-type=CR2032\"` Returns beacons which have a property of the given name and value. Supports multiple filters which will be combined with OR logic. The entire name=value string must be double-quoted as one string. * `attachment_type:\"\"` For example: `attachment_type:\"my-namespace/my-type\"` Returns beacons having at least one attachment of the given namespaced type. Supports \"any within this namespace\" via the partial wildcard syntax: \"my-namespace/*\". Supports multiple filters which will be combined with OR logic. The string must be double-quoted. Multiple filters on the same field are combined with OR logic (except registration_time which is combined with AND logic). Multiple filters on different fields are combined with AND logic. Filters should be separated by spaces. As with any HTTP query string parameter, the whole filter expression must be URL-encoded. Example REST request: `GET /v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`", + "description": "Filter query string that supports the following field filters: * `description:\"\"` For example: `description:\"Room 3\"` Returns beacons whose description matches tokens in the string \"Room 3\" (not necessarily that exact string). The string must be double-quoted. * `status:` For example: `status:active` Returns beacons whose status matches the given value. Values must be one of the Beacon.Status enum values (case insensitive). Accepts multiple filters which will be combined with OR logic. * `stability:` For example: `stability:mobile` Returns beacons whose expected stability matches the given value. Values must be one of the Beacon.Stability enum values (case insensitive). Accepts multiple filters which will be combined with OR logic. * `place_id:\"\"` For example: `place_id:\"ChIJVSZzVR8FdkgRXGmmm6SslKw=\"` Returns beacons explicitly registered at the given place, expressed as a Place ID obtained from [Google Places API](/places/place-id). Does not match places inside the given place. Does not consider the beacon's actual location (which may be different from its registered place). Accepts multiple filters that will be combined with OR logic. The place ID must be double-quoted. * `registration_time[|=]` For example: `registration_time\u003e=1433116800` Returns beacons whose registration time matches the given filter. Supports the operators: , =. Timestamp must be expressed as an integer number of seconds since midnight January 1, 1970 UTC. Accepts at most two filters that will be combined with AND logic, to support \"between\" semantics. If more than two are supplied, the latter ones are ignored. * `lat: lng: radius:` For example: `lat:51.1232343 lng:-1.093852 radius:1000` Returns beacons whose registered location is within the given circle. When any of these fields are given, all are required. Latitude and longitude must be decimal degrees between -90.0 and 90.0 and between -180.0 and 180.0 respectively. Radius must be an integer number of meters between 10 and 1,000,000 (1000 km). * `property:\"=\"` For example: `property:\"battery-type=CR2032\"` Returns beacons which have a property of the given name and value. Supports multiple filters which will be combined with OR logic. The entire name=value string must be double-quoted as one string. * `attachment_type:\"\"` For example: `attachment_type:\"my-namespace/my-type\"` Returns beacons having at least one attachment of the given namespaced type. Supports \"any within this namespace\" via the partial wildcard syntax: \"my-namespace/*\". Supports multiple filters which will be combined with OR logic. The string must be double-quoted. Multiple filters on the same field are combined with OR logic (except registration_time which is combined with AND logic). Multiple filters on different fields are combined with AND logic. Filters should be separated by spaces. As with any HTTP query string parameter, the whole filter expression must be URL-encoded. Example REST request: `GET /v1beta1/beacons?q=status:active%20lat:51.123%20lng:-1.095%20radius:1000`", "location": "query" }, "pageToken": { @@ -567,17 +667,25 @@ "description": "The maximum number of records to return for this request, up to a server-defined upper limit.", "format": "int32", "location": "query" + }, + "projectId": { + "type": "string", + "description": "The project id to list beacons under. If not present then the project credential that made the request is used as the project. Optional.", + "location": "query" } }, "response": { "$ref": "ListBeaconsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "update": { "id": "proximitybeacon.beacons.update", "path": "v1beta1/{+beaconName}", "httpMethod": "PUT", - "description": "Updates the information about the specified beacon. **Any field that you do not populate in the submitted beacon will be permanently erased**, so you should follow the \"read, modify, write\" pattern to avoid inadvertently destroying data. Changes to the beacon status via this method will be silently ignored. To update beacon status, use the separate methods on this API for (de)activation and decommissioning.", + "description": "Updates the information about the specified beacon. **Any field that you do not populate in the submitted beacon will be permanently erased**, so you should follow the \"read, modify, write\" pattern to avoid inadvertently destroying data. Changes to the beacon status via this method will be silently ignored. To update beacon status, use the separate methods on this API for activation, deactivation, and decommissioning. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", @@ -585,6 +693,11 @@ "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the beacon to update. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -595,20 +708,28 @@ }, "response": { "$ref": "Beacon" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "activate": { "id": "proximitybeacon.beacons.activate", "path": "v1beta1/{+beaconName}:activate", "httpMethod": "POST", - "description": "(Re)activates a beacon. A beacon that is active will return information and attachment data when queried via `beaconinfo.getforobserved`. Calling this method on an already active beacon will do nothing (but will return a successful response code).", + "description": "Activates a beacon. A beacon that is active will return information and attachment data when queried via `beaconinfo.getforobserved`. Calling this method on an already active beacon will do nothing (but will return a successful response code). Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "The beacon to activate. Required.", + "description": "Beacon that should be activated. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the beacon to activate. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -616,20 +737,28 @@ ], "response": { "$ref": "Empty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "deactivate": { "id": "proximitybeacon.beacons.deactivate", "path": "v1beta1/{+beaconName}:deactivate", "httpMethod": "POST", - "description": "Deactivates a beacon. Once deactivated, the API will not return information nor attachment data for the beacon when queried via `beaconinfo.getforobserved`. Calling this method on an already inactive beacon will do nothing (but will return a successful response code).", + "description": "Deactivates a beacon. Once deactivated, the API will not return information nor attachment data for the beacon when queried via `beaconinfo.getforobserved`. Calling this method on an already inactive beacon will do nothing (but will return a successful response code). Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "The beacon name of this beacon.", + "description": "Beacon that should be deactivated. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the beacon to deactivate. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -637,7 +766,10 @@ ], "response": { "$ref": "Empty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] } }, "resources": { @@ -647,14 +779,19 @@ "id": "proximitybeacon.beacons.attachments.create", "path": "v1beta1/{+beaconName}/attachments", "httpMethod": "POST", - "description": "Associates the given data with the specified beacon. Attachment data must contain two parts: \n- A namespaced type. \n- The actual attachment data itself. The namespaced type consists of two parts, the namespace and the type. The namespace must be one of the values returned by the `namespaces` endpoint, while the type can be a string of any characters except for the forward slash (`/`) up to 100 characters in length. Attachment data can be up to 1024 bytes long.", + "description": "Associates the given data with the specified beacon. Attachment data must contain two parts: \n- A namespaced type. \n- The actual attachment data itself. The namespaced type consists of two parts, the namespace and the type. The namespace must be one of the values returned by the `namespaces` endpoint, while the type can be a string of any characters except for the forward slash (`/`) up to 100 characters in length. Attachment data can be up to 1024 bytes long. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "The beacon on which the attachment should be created. Required.", + "description": "Beacon on which the attachment should be created. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the project the attachment will belong to. If the project id is not specified then the project making the request is used. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -665,17 +802,20 @@ }, "response": { "$ref": "BeaconAttachment" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "list": { "id": "proximitybeacon.beacons.attachments.list", "path": "v1beta1/{+beaconName}/attachments", "httpMethod": "GET", - "description": "Returns the attachments for the specified beacon that match the specified namespaced-type pattern. To control which namespaced types are returned, you add the `namespacedType` query parameter to the request. You must either use `*/*`, to return all attachments, or the namespace must be one of the ones returned from the `namespaces` endpoint.", + "description": "Returns the attachments for the specified beacon that match the specified namespaced-type pattern. To control which namespaced types are returned, you add the `namespacedType` query parameter to the request. You must either use `*/*`, to return all attachments, or the namespace must be one of the ones returned from the `namespaces` endpoint. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "The beacon whose attachments are to be fetched. Required.", + "description": "Beacon whose attachments should be fetched. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" @@ -684,6 +824,11 @@ "type": "string", "description": "Specifies the namespace and type of attachment to include in response in namespace/type format. Accepts `*/*` to specify \"all types in all namespaces\".", "location": "query" + }, + "projectId": { + "type": "string", + "description": "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 request is used. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -691,20 +836,28 @@ ], "response": { "$ref": "ListBeaconAttachmentsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "delete": { "id": "proximitybeacon.beacons.attachments.delete", "path": "v1beta1/{+attachmentName}", "httpMethod": "DELETE", - "description": "Deletes the specified attachment for the given beacon. Each attachment has a unique attachment name (`attachmentName`) which is returned when you fetch the attachment data via this API. You specify this with the delete request to control which attachment is removed. This operation cannot be undone.", + "description": "Deletes the specified attachment for the given beacon. Each attachment has a unique attachment name (`attachmentName`) which is returned when you fetch the attachment data via this API. You specify this with the delete request to control which attachment is removed. This operation cannot be undone. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "attachmentName": { "type": "string", - "description": "The attachment name (`attachmentName`) of the attachment to remove. For example: `beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738` Required.", + "description": "The attachment name (`attachmentName`) of the attachment to remove. For example: `beacons/3!893737abc9/attachments/c5e937-af0-494-959-ec49d12738`. For Eddystone-EID beacons, the beacon ID portion (`3!893737abc9`) may be the beacon's current EID, or its \"stable\" Eddystone-UID. Required.", "required": true, "pattern": "^beacons/[^/]*/attachments/[^/]*$", "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the attachment to delete. If not provided, the project that is making the request is used. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -712,17 +865,20 @@ ], "response": { "$ref": "Empty" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] }, "batchDelete": { "id": "proximitybeacon.beacons.attachments.batchDelete", "path": "v1beta1/{+beaconName}/attachments:batchDelete", "httpMethod": "POST", - "description": "Deletes multiple attachments on a given beacon. This operation is permanent and cannot be undone. You can optionally specify `namespacedType` to choose which attachments should be deleted. If you do not specify `namespacedType`, all your attachments on the given beacon will be deleted. You also may explicitly specify `*/*` to delete all.", + "description": "Deletes multiple attachments on a given beacon. This operation is permanent and cannot be undone. You can optionally specify `namespacedType` to choose which attachments should be deleted. If you do not specify `namespacedType`, all your attachments on the given beacon will be deleted. You also may explicitly specify `*/*` to delete all. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", - "description": "The beacon whose attachments are to be deleted. Required.", + "description": "The beacon whose attachments should be deleted. A beacon name has the format \"beacons/N!beaconId\" where the beaconId is the base16 ID broadcast by the beacon and N is a code for the beacon's type. Possible values are `3` for Eddystone-UID, `4` for Eddystone-EID, `1` for iBeacon, or `5` for AltBeacon. For Eddystone-EID beacons, you may use either the current EID or the beacon's \"stable\" UID. Required.", "required": true, "pattern": "^beacons/[^/]*$", "location": "path" @@ -731,6 +887,11 @@ "type": "string", "description": "Specifies the namespace and type of attachments to delete in `namespace/type` format. Accepts `*/*` to specify \"all types in all namespaces\". Optional.", "location": "query" + }, + "projectId": { + "type": "string", + "description": "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 request is used. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -738,7 +899,10 @@ ], "response": { "$ref": "DeleteAttachmentsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] } } }, @@ -748,7 +912,7 @@ "id": "proximitybeacon.beacons.diagnostics.list", "path": "v1beta1/{+beaconName}/diagnostics", "httpMethod": "GET", - "description": "List the diagnostics for a single beacon. You can also list diagnostics for all the beacons owned by your Google Developers Console project by using the beacon name `beacons/-`.", + "description": "List the diagnostics for a single beacon. You can also list diagnostics for all the beacons owned by your Google Developers Console project by using the beacon name `beacons/-`. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** or **Can edit** permissions in the Google Developers Console project.", "parameters": { "beaconName": { "type": "string", @@ -777,6 +941,11 @@ "LOW_BATTERY" ], "location": "query" + }, + "projectId": { + "type": "string", + "description": "Requests only diagnostic records for the given project id. If not set, then the project making the request will be used for looking up diagnostic records. Optional.", + "location": "query" } }, "parameterOrder": [ @@ -784,7 +953,10 @@ ], "response": { "$ref": "ListDiagnosticsResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] } } } @@ -796,10 +968,68 @@ "id": "proximitybeacon.namespaces.list", "path": "v1beta1/namespaces", "httpMethod": "GET", - "description": "Lists all attachment namespaces owned by your Google Developers Console project. Attachment data associated with a beacon must include a namespaced type, and the namespace must be owned by your project.", + "description": "Lists all attachment namespaces owned by your Google Developers Console project. Attachment data associated with a beacon must include a namespaced type, and the namespace must be owned by your project. Authenticate using an [OAuth access token](https://developers.google.com/identity/protocols/OAuth2) from a signed-in user with **viewer**, **Is owner** or **Can edit** permissions in the Google Developers Console project.", + "parameters": { + "projectId": { + "type": "string", + "description": "The project id to list namespaces under. Optional.", + "location": "query" + } + }, "response": { "$ref": "ListNamespacesResponse" - } + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + }, + "update": { + "id": "proximitybeacon.namespaces.update", + "path": "v1beta1/{+namespaceName}", + "httpMethod": "PUT", + "description": "Updates the information about the specified namespace. Only the namespace visibility can be updated.", + "parameters": { + "namespaceName": { + "type": "string", + "description": "Resource name of this namespace. Namespaces names have the format: namespaces/namespace.", + "required": true, + "pattern": "^namespaces/[^/]*$", + "location": "path" + }, + "projectId": { + "type": "string", + "description": "The project id of the namespace to update. If the project id is not specified then the project making the request is used. The project id must match the project that owns the beacon. Optional.", + "location": "query" + } + }, + "parameterOrder": [ + "namespaceName" + ], + "request": { + "$ref": "Namespace" + }, + "response": { + "$ref": "Namespace" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] + } + } + }, + "v1beta1": { + "methods": { + "getEidparams": { + "id": "proximitybeacon.getEidparams", + "path": "v1beta1/eidparams", + "httpMethod": "GET", + "description": "Gets the Proximity Beacon API's current public key and associated parameters used to initiate the Diffie-Hellman key exchange required to register a beacon that broadcasts the Eddystone-EID format. This key changes periodically; clients may cache it and re-use the same public key to provision and register multiple beacons. However, clients should be prepared to refresh this key when they encounter an error registering an Eddystone-EID beacon.", + "response": { + "$ref": "EphemeralIdRegistrationParams" + }, + "scopes": [ + "https://www.googleapis.com/auth/userlocation.beacon.registry" + ] } } }, @@ -809,7 +1039,7 @@ "id": "proximitybeacon.beaconinfo.getforobserved", "path": "v1beta1/beaconinfo:getforobserved", "httpMethod": "POST", - "description": "Given one or more beacon observations, returns any beacon information and attachments accessible to your application.", + "description": "Given one or more beacon observations, returns any beacon information and attachments accessible to your application. Authorize by using the [API key](https://developers.google.com/beacons/proximity/how-tos/authorizing#APIKey) for the application.", "request": { "$ref": "GetInfoForObservedBeaconsRequest" }, diff --git a/etc/api/pubsub/v1/pubsub-api.json b/etc/api/pubsub/v1/pubsub-api.json index 4e161e97a3..0168e6880c 100644 --- a/etc/api/pubsub/v1/pubsub-api.json +++ b/etc/api/pubsub/v1/pubsub-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/liyzgLngirW3xU7Tt2Pd1AnSK1c\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/liyzgLngirW3xU7Tt2Pd1AnSK1c\"", "discoveryVersion": "v1", "id": "pubsub:v1", "name": "pubsub", diff --git a/etc/api/pubsub/v1beta1a/pubsub-api.json b/etc/api/pubsub/v1beta1a/pubsub-api.json index e809d5d9f0..727a8d6b89 100644 --- a/etc/api/pubsub/v1beta1a/pubsub-api.json +++ b/etc/api/pubsub/v1beta1a/pubsub-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/3hphN7YPNWxdqtNsR-OsHOV5JBk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/3hphN7YPNWxdqtNsR-OsHOV5JBk\"", "discoveryVersion": "v1", "id": "pubsub:v1beta1a", "name": "pubsub", diff --git a/etc/api/pubsub/v1beta2/pubsub-api.json b/etc/api/pubsub/v1beta2/pubsub-api.json index 58efed2669..dff01f26ae 100644 --- a/etc/api/pubsub/v1beta2/pubsub-api.json +++ b/etc/api/pubsub/v1beta2/pubsub-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/bCHPJ2BvROiKtNiRgnXJErIP0lU\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/bCHPJ2BvROiKtNiRgnXJErIP0lU\"", "discoveryVersion": "v1", "id": "pubsub:v1beta2", "name": "pubsub", diff --git a/etc/api/qpxexpress/v1/qpxexpress-api.json b/etc/api/qpxexpress/v1/qpxexpress-api.json index 6e505f8a91..33f90e31e8 100644 --- a/etc/api/qpxexpress/v1/qpxexpress-api.json +++ b/etc/api/qpxexpress/v1/qpxexpress-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/mP0X0J9scme9uxhB3oYtWrSUhT0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/ijp44wmwc3ANNTETi-Hxe_Mf9S0\"", "discoveryVersion": "v1", "id": "qpxExpress:v1", "name": "qpxExpress", "canonicalName": "QPX Express", "version": "v1", - "revision": "20160307", + "revision": "20160708", "title": "QPX Express API", "description": "Finds the least expensive flights between an origin and a destination.", "ownerDomain": "google.com", @@ -816,6 +816,10 @@ "type": "integer", "description": "The number of solutions to return, maximum 500.", "format": "int32" + }, + "ticketingCountry": { + "type": "string", + "description": "IATA country code representing the point of ticketing." } } }, diff --git a/etc/api/replicapool/v1beta1/replicapool-api.json b/etc/api/replicapool/v1beta1/replicapool-api.json index 6ca01db480..7ca65a9b72 100644 --- a/etc/api/replicapool/v1beta1/replicapool-api.json +++ b/etc/api/replicapool/v1beta1/replicapool-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/XplNMf3n1mBwmu3vRjwQEjJpoaQ\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/02c3brt5wR0JN0c2o9m2_Ei9JvA\"", "discoveryVersion": "v1", "id": "replicapool:v1beta1", "name": "replicapool", "version": "v1beta1", - "revision": "20150708", + "revision": "20160512", "title": "Replica Pool API", "description": "The Replica Pool API allows users to declaratively provision and manage groups of Google Compute Engine instances based on a common template.", "ownerDomain": "google.com", diff --git a/etc/api/replicapool/v1beta2/replicapool-api.json b/etc/api/replicapool/v1beta2/replicapool-api.json index 80f046e1e2..1b0a0ff03a 100644 --- a/etc/api/replicapool/v1beta2/replicapool-api.json +++ b/etc/api/replicapool/v1beta2/replicapool-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/nIENWv8MwO8oklMOHa14Ara4Ygw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/TpUz2pYaIGRouf7x77PYtXiOnk4\"", "discoveryVersion": "v1", "id": "replicapool:v1beta2", "name": "replicapool", "version": "v1beta2", - "revision": "20150708", + "revision": "20160512", "title": "Google Compute Engine Instance Group Manager API", - "description": "The Google Compute Engine Instance Group Manager API provides groups of homogenous Compute Engine Instances.", + "description": "[Deprecated. Please use Instance Group Manager in Compute API] Provides groups of homogenous Compute Engine instances.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json b/etc/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json index db316cd9ea..3000a78652 100644 --- a/etc/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json +++ b/etc/api/replicapoolupdater/v1beta1/replicapoolupdater-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Qa39yJM3yH1r8biVjTDz07Q6Imo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Qa39yJM3yH1r8biVjTDz07Q6Imo\"", "discoveryVersion": "v1", "id": "replicapoolupdater:v1beta1", "name": "replicapoolupdater", diff --git a/etc/api/reseller/v1/reseller-api.json b/etc/api/reseller/v1/reseller-api.json index 1a408f6f53..d70797812a 100644 --- a/etc/api/reseller/v1/reseller-api.json +++ b/etc/api/reseller/v1/reseller-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/YYt2cLTkBPBrBPF_Oe4KxSogSAI\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/YYt2cLTkBPBrBPF_Oe4KxSogSAI\"", "discoveryVersion": "v1", "id": "reseller:v1", "name": "reseller", diff --git a/etc/api/resourceviews/v1beta1/resourceviews-api.json b/etc/api/resourceviews/v1beta1/resourceviews-api.json index 229f702dd2..051f4c4989 100644 --- a/etc/api/resourceviews/v1beta1/resourceviews-api.json +++ b/etc/api/resourceviews/v1beta1/resourceviews-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/WC-I5Gj0W79mm5nRFOZcndhVFk0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/NU3_Tlv6JnVBus3nYOmc2eYKXAs\"", "discoveryVersion": "v1", "id": "resourceviews:v1beta1", "name": "resourceviews", "version": "v1beta1", - "revision": "20150708", + "revision": "20160512", "title": "Resource Views API", "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", "ownerDomain": "google.com", diff --git a/etc/api/resourceviews/v1beta2/resourceviews-api.json b/etc/api/resourceviews/v1beta2/resourceviews-api.json index 3a81ee012e..83499195dd 100644 --- a/etc/api/resourceviews/v1beta2/resourceviews-api.json +++ b/etc/api/resourceviews/v1beta2/resourceviews-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/OS-yQ-jHk3rvVHe8L_LYfUrBR50\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/fUFoXO3TEWpyAX5ITesLbqEiy3A\"", "discoveryVersion": "v1", "id": "resourceviews:v1beta2", "name": "resourceviews", "version": "v1beta2", - "revision": "20150708", + "revision": "20160512", "title": "Google Compute Engine Instance Groups API", "description": "The Resource View API allows users to create and manage logical sets of Google Compute Engine instances.", "ownerDomain": "google.com", diff --git a/etc/api/runtimeconfig/v1beta1/runtimeconfig-api.json b/etc/api/runtimeconfig/v1beta1/runtimeconfig-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/safebrowsing/v4/safebrowsing-api.json b/etc/api/safebrowsing/v4/safebrowsing-api.json new file mode 100644 index 0000000000..f130ffeb21 --- /dev/null +++ b/etc/api/safebrowsing/v4/safebrowsing-api.json @@ -0,0 +1,804 @@ +{ + "kind": "discovery#restDescription", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Yoew02BLq1-_QyzwsVjtSdddocY\"", + "discoveryVersion": "v1", + "id": "safebrowsing:v4", + "name": "safebrowsing", + "version": "v4", + "revision": "20160520", + "title": "Safe Browsing APIs", + "description": "Enables client applications to check web resources (most commonly URLs) against Google-generated lists of unsafe web resources.", + "ownerDomain": "google.com", + "ownerName": "Google", + "icons": { + "x16": "http://www.google.com/images/icons/product/search-16.gif", + "x32": "http://www.google.com/images/icons/product/search-32.gif" + }, + "documentationLink": "https://developers.google.com/safe-browsing/", + "protocol": "rest", + "baseUrl": "https://safebrowsing.googleapis.com/", + "basePath": "", + "rootUrl": "https://safebrowsing.googleapis.com/", + "servicePath": "", + "batchPath": "batch", + "parameters": { + "access_token": { + "type": "string", + "description": "OAuth access token.", + "location": "query" + }, + "alt": { + "type": "string", + "description": "Data format for response.", + "default": "json", + "enumDescriptions": [ + "Responses with Content-Type of application/json", + "Media download with context-dependent Content-Type", + "Responses with Content-Type of application/x-protobuf" + ], + "location": "query" + }, + "bearer_token": { + "type": "string", + "description": "OAuth bearer token.", + "location": "query" + }, + "callback": { + "type": "string", + "description": "JSONP", + "location": "query" + }, + "fields": { + "type": "string", + "description": "Selector specifying which fields to include in a partial response.", + "location": "query" + }, + "key": { + "type": "string", + "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.", + "location": "query" + }, + "oauth_token": { + "type": "string", + "description": "OAuth 2.0 token for the current user.", + "location": "query" + }, + "pp": { + "type": "boolean", + "description": "Pretty-print response.", + "default": "true", + "location": "query" + }, + "prettyPrint": { + "type": "boolean", + "description": "Returns response with indentations and line breaks.", + "default": "true", + "location": "query" + }, + "quotaUser": { + "type": "string", + "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.", + "location": "query" + }, + "upload_protocol": { + "type": "string", + "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").", + "location": "query" + }, + "uploadType": { + "type": "string", + "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").", + "location": "query" + }, + "$.xgafv": { + "type": "string", + "description": "V1 error format.", + "enumDescriptions": [ + "v1 error format", + "v2 error format" + ], + "location": "query" + } + }, + "schemas": { + "FindThreatMatchesRequest": { + "id": "FindThreatMatchesRequest", + "type": "object", + "description": "Request to check entries against lists.", + "properties": { + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." + }, + "threatInfo": { + "$ref": "ThreatInfo", + "description": "The lists and entries to be checked for matches." + } + } + }, + "ClientInfo": { + "id": "ClientInfo", + "type": "object", + "description": "The client metadata associated with Safe Browsing API requests.", + "properties": { + "clientId": { + "type": "string", + "description": "A client ID that (hopefully) uniquely identifies the client implementation of the Safe Browsing API." + }, + "clientVersion": { + "type": "string", + "description": "The version of the client implementation." + } + } + }, + "ThreatInfo": { + "id": "ThreatInfo", + "type": "object", + "description": "The information regarding one or more threats that a client submits when checking for matches in threat lists.", + "properties": { + "threatTypes": { + "type": "array", + "description": "The threat types to be checked.", + "enumDescriptions": [ + "Unknown.", + "Malware threat type.", + "Social engineering threat type.", + "Unwanted software threat type.", + "Potentially harmful application threat type." + ], + "items": { + "type": "string", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION" + ] + } + }, + "platformTypes": { + "type": "array", + "description": "The platform types to be checked.", + "enumDescriptions": [ + "Unknown platform.", + "Threat posed to Windows.", + "Threat posed to Linux.", + "Threat posed to Android.", + "Threat posed to OS X.", + "Threat posed to iOS.", + "Threat posed to at least one of the defined platforms.", + "Threat posed to all defined platforms.", + "Threat posed to Chrome." + ], + "items": { + "type": "string", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + } + }, + "threatEntryTypes": { + "type": "array", + "description": "The entry types to be checked.", + "enumDescriptions": [ + "Unspecified.", + "A URL.", + "An executable program.", + "An IP range." + ], + "items": { + "type": "string", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE" + ] + } + }, + "threatEntries": { + "type": "array", + "description": "The threat entries to be checked.", + "items": { + "$ref": "ThreatEntry" + } + } + } + }, + "ThreatEntry": { + "id": "ThreatEntry", + "type": "object", + "description": "An individual threat; for example, a malicious URL or its hash representation. Only one of these fields should be set.", + "properties": { + "hash": { + "type": "string", + "description": "A hash prefix, consisting of the most significant 4-32 bytes of a SHA256 hash. This field is in binary format.", + "format": "byte" + }, + "url": { + "type": "string", + "description": "A URL." + }, + "digest": { + "type": "string", + "description": "The digest of an executable in SHA256 format. The API supports both binary and hex digests.", + "format": "byte" + } + } + }, + "FindThreatMatchesResponse": { + "id": "FindThreatMatchesResponse", + "type": "object", + "properties": { + "matches": { + "type": "array", + "description": "The threat list matches.", + "items": { + "$ref": "ThreatMatch" + } + } + } + }, + "ThreatMatch": { + "id": "ThreatMatch", + "type": "object", + "description": "A match when checking a threat entry in the Safe Browsing threat lists.", + "properties": { + "threatType": { + "type": "string", + "description": "The threat type matching this threat.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION" + ] + }, + "platformType": { + "type": "string", + "description": "The platform type matching this threat.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "threatEntryType": { + "type": "string", + "description": "The threat entry type matching this threat.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE" + ] + }, + "threat": { + "$ref": "ThreatEntry", + "description": "The threat matching this threat." + }, + "threatEntryMetadata": { + "$ref": "ThreatEntryMetadata", + "description": "Optional metadata associated with this threat." + }, + "cacheDuration": { + "type": "string", + "description": "The cache lifetime for the returned match. Clients must not cache this response for more than this duration to avoid false positives." + } + } + }, + "ThreatEntryMetadata": { + "id": "ThreatEntryMetadata", + "type": "object", + "description": "The metadata associated with a specific threat entry. The client is expected to know the metadata key/value pairs associated with each threat type.", + "properties": { + "entries": { + "type": "array", + "description": "The metadata entries.", + "items": { + "$ref": "MetadataEntry" + } + } + } + }, + "MetadataEntry": { + "id": "MetadataEntry", + "type": "object", + "description": "A single metadata entry.", + "properties": { + "key": { + "type": "string", + "description": "The metadata entry key.", + "format": "byte" + }, + "value": { + "type": "string", + "description": "The metadata entry value.", + "format": "byte" + } + } + }, + "FetchThreatListUpdatesRequest": { + "id": "FetchThreatListUpdatesRequest", + "type": "object", + "description": "Describes a Safe Browsing API update request. Clients can request updates for multiple lists in a single request. NOTE: Field index 2 is unused. NEXT: 4", + "properties": { + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." + }, + "listUpdateRequests": { + "type": "array", + "description": "The requested threat list updates.", + "items": { + "$ref": "ListUpdateRequest" + } + } + } + }, + "ListUpdateRequest": { + "id": "ListUpdateRequest", + "type": "object", + "description": "A single list update request.", + "properties": { + "threatType": { + "type": "string", + "description": "The type of threat posed by entries present in the list.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION" + ] + }, + "platformType": { + "type": "string", + "description": "The type of platform at risk by entries present in the list.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "threatEntryType": { + "type": "string", + "description": "The types of entries present in the list.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE" + ] + }, + "state": { + "type": "string", + "description": "The current state of the client for the requested list (the encrypted client state that was received from the last successful list update).", + "format": "byte" + }, + "constraints": { + "$ref": "Constraints", + "description": "The constraints associated with this request." + } + } + }, + "Constraints": { + "id": "Constraints", + "type": "object", + "description": "The constraints for this update.", + "properties": { + "maxUpdateEntries": { + "type": "integer", + "description": "The maximum size in number of entries. The update will not contain more entries than this value. This should be a power of 2 between 2**10 and 2**20. If zero, no update size limit is set.", + "format": "int32" + }, + "maxDatabaseEntries": { + "type": "integer", + "description": "Sets the maximum number of entries that the client is willing to have in the local database. This should be a power of 2 between 2**10 and 2**20. If zero, no database size limit is set.", + "format": "int32" + }, + "region": { + "type": "string", + "description": "Requests the list for a specific geographic location. If not set the server may pick that value based on the user's IP address. Expects ISO 3166-1 alpha-2 format." + }, + "supportedCompressions": { + "type": "array", + "description": "The compression types supported by the client.", + "enumDescriptions": [ + "Unknown.", + "Raw, uncompressed data.", + "Rice-Golomb encoded data." + ], + "items": { + "type": "string", + "enum": [ + "COMPRESSION_TYPE_UNSPECIFIED", + "RAW", + "RICE" + ] + } + } + } + }, + "FetchThreatListUpdatesResponse": { + "id": "FetchThreatListUpdatesResponse", + "type": "object", + "properties": { + "listUpdateResponses": { + "type": "array", + "description": "The list updates requested by the clients.", + "items": { + "$ref": "ListUpdateResponse" + } + }, + "minimumWaitDuration": { + "type": "string", + "description": "The minimum duration the client must wait before issuing any update request. If this field is not set clients may update as soon as they want." + } + } + }, + "ListUpdateResponse": { + "id": "ListUpdateResponse", + "type": "object", + "description": "An update to an individual list.", + "properties": { + "threatType": { + "type": "string", + "description": "The threat type for which data is returned.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION" + ] + }, + "threatEntryType": { + "type": "string", + "description": "The format of the threats.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE" + ] + }, + "platformType": { + "type": "string", + "description": "The platform type for which data is returned.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "responseType": { + "type": "string", + "description": "The type of response. This may indicate that an action is required by the client when the response is received.", + "enum": [ + "RESPONSE_TYPE_UNSPECIFIED", + "PARTIAL_UPDATE", + "FULL_UPDATE" + ] + }, + "additions": { + "type": "array", + "description": "A set of entries to add to a local threat type's list. Repeated to allow for a combination of compressed and raw data to be sent in a single response.", + "items": { + "$ref": "ThreatEntrySet" + } + }, + "removals": { + "type": "array", + "description": "A set of entries to remove from a local threat type's list. Repeated for the same reason as above.", + "items": { + "$ref": "ThreatEntrySet" + } + }, + "newClientState": { + "type": "string", + "description": "The new client state, in encrypted format. Opaque to clients.", + "format": "byte" + }, + "checksum": { + "$ref": "Checksum", + "description": "The expected SHA256 hash of the client state; that is, of the sorted list of all hashes present in the database after applying the provided update. If the client state doesn't match the expected state, the client must disregard this update and retry later." + } + } + }, + "ThreatEntrySet": { + "id": "ThreatEntrySet", + "type": "object", + "description": "A set of threats that should be added or removed from a client's local database.", + "properties": { + "compressionType": { + "type": "string", + "description": "The compression type for the entries in this set.", + "enum": [ + "COMPRESSION_TYPE_UNSPECIFIED", + "RAW", + "RICE" + ] + }, + "rawHashes": { + "$ref": "RawHashes", + "description": "The raw SHA256-formatted entries." + }, + "rawIndices": { + "$ref": "RawIndices", + "description": "The raw removal indices for a local list." + }, + "riceHashes": { + "$ref": "RiceDeltaEncoding", + "description": "The encoded 4-byte prefixes of SHA256-formatted entries, using a Golomb-Rice encoding." + }, + "riceIndices": { + "$ref": "RiceDeltaEncoding", + "description": "The encoded local, lexicographically-sorted list indices, using a Golomb-Rice encoding. Used for sending compressed removal indices." + } + } + }, + "RawHashes": { + "id": "RawHashes", + "type": "object", + "description": "The uncompressed threat entries in hash format of a particular prefix length. Hashes can be anywhere from 4 to 32 bytes in size. A large majority are 4 bytes, but some hashes are lengthened if they collide with the hash of a popular URL. Used for sending ThreatEntrySet to clients that do not support compression, or when sending non-4-byte hashes to clients that do support compression.", + "properties": { + "prefixSize": { + "type": "integer", + "description": "The number of bytes for each prefix encoded below. This field can be anywhere from 4 (shortest prefix) to 32 (full SHA256 hash).", + "format": "int32" + }, + "rawHashes": { + "type": "string", + "description": "The hashes, all concatenated into one long string. Each hash has a prefix size of |prefix_size| above. Hashes are sorted in lexicographic order.", + "format": "byte" + } + } + }, + "RawIndices": { + "id": "RawIndices", + "type": "object", + "description": "A set of raw indices to remove from a local list.", + "properties": { + "indices": { + "type": "array", + "description": "The indices to remove from a lexicographically-sorted local list.", + "items": { + "type": "integer", + "format": "int32" + } + } + } + }, + "RiceDeltaEncoding": { + "id": "RiceDeltaEncoding", + "type": "object", + "description": "The Rice-Golomb encoded data. Used for sending compressed 4-byte hashes or compressed removal indices.", + "properties": { + "firstValue": { + "type": "string", + "description": "The offset of the first entry in the encoded data, or, if only a single integer was encoded, that single integer's value.", + "format": "int64" + }, + "riceParameter": { + "type": "integer", + "description": "The Golomb-Rice parameter, which is a number between 2 and 28. This field is missing (that is, zero) if `num_entries` is zero.", + "format": "int32" + }, + "numEntries": { + "type": "integer", + "description": "The number of entries that are delta encoded in the encoded data. If only a single integer was encoded, this will be zero and the single value will be stored in `first_value`.", + "format": "int32" + }, + "encodedData": { + "type": "string", + "description": "The encoded deltas that are encoded using the Golomb-Rice coder.", + "format": "byte" + } + } + }, + "Checksum": { + "id": "Checksum", + "type": "object", + "description": "The expected state of a client's local database.", + "properties": { + "sha256": { + "type": "string", + "description": "The SHA256 hash of the client state; that is, of the sorted list of all hashes present in the database.", + "format": "byte" + } + } + }, + "FindFullHashesRequest": { + "id": "FindFullHashesRequest", + "type": "object", + "description": "Request to return full hashes matched by the provided hash prefixes.", + "properties": { + "client": { + "$ref": "ClientInfo", + "description": "The client metadata." + }, + "clientStates": { + "type": "array", + "description": "The current client states for each of the client's local threat lists.", + "items": { + "type": "string", + "format": "byte" + } + }, + "threatInfo": { + "$ref": "ThreatInfo", + "description": "The lists and hashes to be checked." + } + } + }, + "FindFullHashesResponse": { + "id": "FindFullHashesResponse", + "type": "object", + "properties": { + "matches": { + "type": "array", + "description": "The full hashes that matched the requested prefixes.", + "items": { + "$ref": "ThreatMatch" + } + }, + "minimumWaitDuration": { + "type": "string", + "description": "The minimum duration the client must wait before issuing any find hashes request. If this field is not set, clients can issue a request as soon as they want." + }, + "negativeCacheDuration": { + "type": "string", + "description": "For requested entities that did not match the threat list, how long to cache the response." + } + } + }, + "ListThreatListsResponse": { + "id": "ListThreatListsResponse", + "type": "object", + "properties": { + "threatLists": { + "type": "array", + "description": "The lists available for download by the client.", + "items": { + "$ref": "ThreatListDescriptor" + } + } + } + }, + "ThreatListDescriptor": { + "id": "ThreatListDescriptor", + "type": "object", + "description": "Describes an individual threat list. A list is defined by three parameters: the type of threat posed, the type of platform targeted by the threat, and the type of entries in the list.", + "properties": { + "threatType": { + "type": "string", + "description": "The threat type posed by the list's entries.", + "enum": [ + "THREAT_TYPE_UNSPECIFIED", + "MALWARE", + "SOCIAL_ENGINEERING", + "UNWANTED_SOFTWARE", + "POTENTIALLY_HARMFUL_APPLICATION" + ] + }, + "platformType": { + "type": "string", + "description": "The platform type targeted by the list's entries.", + "enum": [ + "PLATFORM_TYPE_UNSPECIFIED", + "WINDOWS", + "LINUX", + "ANDROID", + "OSX", + "IOS", + "ANY_PLATFORM", + "ALL_PLATFORMS", + "CHROME" + ] + }, + "threatEntryType": { + "type": "string", + "description": "The entry types contained in the list.", + "enum": [ + "THREAT_ENTRY_TYPE_UNSPECIFIED", + "URL", + "EXECUTABLE", + "IP_RANGE" + ] + } + } + } + }, + "resources": { + "threatMatches": { + "methods": { + "find": { + "id": "safebrowsing.threatMatches.find", + "path": "v4/threatMatches:find", + "httpMethod": "POST", + "description": "Finds the threat entries that match the Safe Browsing lists.", + "request": { + "$ref": "FindThreatMatchesRequest" + }, + "response": { + "$ref": "FindThreatMatchesResponse" + } + } + } + }, + "threatListUpdates": { + "methods": { + "fetch": { + "id": "safebrowsing.threatListUpdates.fetch", + "path": "v4/threatListUpdates:fetch", + "httpMethod": "POST", + "description": "Fetches the most recent threat list updates. A client can request updates for multiple lists at once.", + "request": { + "$ref": "FetchThreatListUpdatesRequest" + }, + "response": { + "$ref": "FetchThreatListUpdatesResponse" + } + } + } + }, + "fullHashes": { + "methods": { + "find": { + "id": "safebrowsing.fullHashes.find", + "path": "v4/fullHashes:find", + "httpMethod": "POST", + "description": "Finds the full hashes that match the requested hash prefixes.", + "request": { + "$ref": "FindFullHashesRequest" + }, + "response": { + "$ref": "FindFullHashesResponse" + } + } + } + }, + "threatLists": { + "methods": { + "list": { + "id": "safebrowsing.threatLists.list", + "path": "v4/threatLists", + "httpMethod": "GET", + "description": "Lists the Safe Browsing threat lists available for download.", + "response": { + "$ref": "ListThreatListsResponse" + } + } + } + } + } +} diff --git a/etc/api/script/v1/script-api.json b/etc/api/script/v1/script-api.json index a279dad56d..48eb38cf55 100644 --- a/etc/api/script/v1/script-api.json +++ b/etc/api/script/v1/script-api.json @@ -1,20 +1,20 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/EU3C4gpLCUA7tQGVmbBda1n2_q0\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/FcNWZezE05ypidUunx03uCyJR70\"", "discoveryVersion": "v1", "id": "script:v1", "name": "script", "version": "v1", - "revision": "20150922", + "revision": "20160801", "title": "Google Apps Script Execution API", - "description": "An API for executing Google Apps Script projects.", + "description": "Executes Google Apps Script projects.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { "x16": "http://www.google.com/images/icons/product/search-16.gif", "x32": "http://www.google.com/images/icons/product/search-32.gif" }, - "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/run", + "documentationLink": "https://developers.google.com/apps-script/execution/rest/v1/scripts/run", "protocol": "rest", "baseUrl": "https://script.googleapis.com/", "basePath": "", @@ -130,6 +130,9 @@ "https://www.googleapis.com/auth/groups": { "description": "View and manage your Google Groups" }, + "https://www.googleapis.com/auth/spreadsheets": { + "description": "View and manage your spreadsheets in Google Drive" + }, "https://www.googleapis.com/auth/userinfo.email": { "description": "View your email address" } @@ -177,7 +180,7 @@ "description": "This field is not used.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } }, "done": { @@ -193,7 +196,7 @@ "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.", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -219,7 +222,7 @@ "type": "object", "additionalProperties": { "type": "any", - "description": "Properties of the object. Contains field @ype with type URL." + "description": "Properties of the object. Contains field @type with type URL." } } } @@ -271,6 +274,13 @@ "result": { "type": "any", "description": "The return value of the script function. The type will match the type returned in Apps Script. Functions called through the Execution API cannot return Apps Script-specific objects (such as a `Document` or `Calendar`); they can only return primitive types such as a `string`, `number`, `array`, `object`, or `boolean`." + }, + "status": { + "type": "string", + "enum": [ + "SUCCESS", + "CANCELED" + ] } } } @@ -310,6 +320,7 @@ "https://www.googleapis.com/auth/forms", "https://www.googleapis.com/auth/forms.currentonly", "https://www.googleapis.com/auth/groups", + "https://www.googleapis.com/auth/spreadsheets", "https://www.googleapis.com/auth/userinfo.email" ] } diff --git a/etc/api/servicecontrol/v1/servicecontrol-api.json b/etc/api/servicecontrol/v1/servicecontrol-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/servicemanagement/v1/servicemanagement-api.json b/etc/api/servicemanagement/v1/servicemanagement-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/shared.yaml b/etc/api/shared.yaml index f96eab891a..49afa73274 100644 --- a/etc/api/shared.yaml +++ b/etc/api/shared.yaml @@ -5,6 +5,22 @@ api: # to allow looking at it at a later point. # in beta, there is not a single method ! - dataflow + - mapsengine + - firebaserules + - runtimeconfig + - analyticsreporting + - servicecontrol + - servicemanagement + - language + - speech + - adexchangebuyer2 + - clouderrorreporting + - vision + - freebase + - acceleratedmobilepageurl + - cloudbuild + - sheets + - audit - cloudsearch - toolresults - datastore diff --git a/etc/api/sheets/v4/sheets-api.json b/etc/api/sheets/v4/sheets-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/siteverification/v1/siteverification-api.json b/etc/api/siteverification/v1/siteverification-api.json index db4b2054b9..a65873d092 100644 --- a/etc/api/siteverification/v1/siteverification-api.json +++ b/etc/api/siteverification/v1/siteverification-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7Wh2BL46-ycQBGZrIfJ_r7nrkOo\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/7Wh2BL46-ycQBGZrIfJ_r7nrkOo\"", "discoveryVersion": "v1", "id": "siteVerification:v1", "name": "siteVerification", diff --git a/etc/api/spectrum/v1explorer/spectrum-api.json b/etc/api/spectrum/v1explorer/spectrum-api.json index 5c328cdc42..9c0d1799b1 100644 --- a/etc/api/spectrum/v1explorer/spectrum-api.json +++ b/etc/api/spectrum/v1explorer/spectrum-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/SkteIUms8M7yTfg8BLnJI_jjb7g\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/7o5ihLEuj1aR6K5HAKPVJpf81Ag\"", "discoveryVersion": "v1", "id": "spectrum:v1explorer", "name": "spectrum", "version": "v1explorer", - "revision": "20160206", + "revision": "20160606", "title": "Google Spectrum Database API", "description": "API for spectrum-management functions.", "ownerDomain": "google.com", diff --git a/etc/api/speech/v1beta1/speech-api.json b/etc/api/speech/v1beta1/speech-api.json new file mode 100644 index 0000000000..e69de29bb2 diff --git a/etc/api/sqladmin/v1beta3/sqladmin-api.json b/etc/api/sqladmin/v1beta3/sqladmin-api.json index d296190a2b..d5cf1191a4 100644 --- a/etc/api/sqladmin/v1beta3/sqladmin-api.json +++ b/etc/api/sqladmin/v1beta3/sqladmin-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/4TC4F7Xm6e7jG0NqseTCtK84pBM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/415Y_MOhJemLQ99n44vp9SPEXTs\"", "discoveryVersion": "v1", "id": "sqladmin:v1beta3", "name": "sqladmin", "canonicalName": "SQL Admin", "version": "v1beta3", - "revision": "20160321", + "revision": "20160907", "title": "Cloud SQL Administration API", "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", "ownerDomain": "google.com", diff --git a/etc/api/sqladmin/v1beta4/sqladmin-api.json b/etc/api/sqladmin/v1beta4/sqladmin-api.json index 3816228a13..c60d9553f9 100644 --- a/etc/api/sqladmin/v1beta4/sqladmin-api.json +++ b/etc/api/sqladmin/v1beta4/sqladmin-api.json @@ -1,12 +1,12 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/QBvZSnJ2Tk6w96gxgwGXIFQ4mzk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/zmDns7c8ddqXN0fbR2rCpbUmiN4\"", "discoveryVersion": "v1", "id": "sqladmin:v1beta4", "name": "sqladmin", "canonicalName": "SQL Admin", "version": "v1beta4", - "revision": "20160321", + "revision": "20160907", "title": "Cloud SQL Administration API", "description": "Creates and configures Cloud SQL instances, which provide fully-managed MySQL databases.", "ownerDomain": "google.com", @@ -134,6 +134,10 @@ "type": "object", "description": "A database instance backup run resource.", "properties": { + "description": { + "type": "string", + "description": "The description of this run, only applicable to on-demand backups." + }, "endTime": { "type": "string", "description": "The time the backup operation completed in UTC timezone in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", @@ -175,6 +179,10 @@ "type": "string", "description": "The status of this run." }, + "type": { + "type": "string", + "description": "The type of this run; can be either \"AUTOMATED\" or \"ON_DEMAND\"." + }, "windowStartTime": { "type": "string", "description": "The start time of the backup window during which this the backup was attempted in RFC 3339 format, for example 2012-11-15T16:19:00.094Z.", @@ -348,7 +356,7 @@ }, "name": { "type": "string", - "description": "The name of the failover replica." + "description": "The name of the failover replica. If specified at instance creation, a failover replica is created for the instance. The name doesn't include the project ID. This property is applicable only to Second Generation instances." } } }, @@ -1063,7 +1071,7 @@ "properties": { "activationPolicy": { "type": "string", - "description": "The activation policy for this instance. This specifies when the instance should be activated and is applicable only when the instance state is RUNNABLE. This can be one of the following.\nALWAYS: The instance should always be active.\nNEVER: The instance should never be activated.\nON_DEMAND: The instance is activated upon receiving requests; only applicable to First Generation instances." + "description": "The activation policy specifies when the instance is activated; it is applicable only when the instance state is RUNNABLE. The activation policy cannot be updated together with other settings for Second Generation instances. Valid values:\nALWAYS: The instance is on; it is not deactivated by inactivity.\nNEVER: The instance is off; it is not activated, even if a connection request arrives.\nON_DEMAND: The instance responds to incoming requests, and turns itself off when not in use. Instances with PER_USE pricing turn off after 15 minutes of inactivity. Instances with PER_PACKAGE pricing turn off after 12 hours of inactivity." }, "authorizedGaeApplications": { "type": "array", @@ -1082,12 +1090,12 @@ }, "dataDiskSizeGb": { "type": "string", - "description": "The size of data disk, in GB. The data disk size minimum is 10GB. This property is only applicable to Second Generation instances.", + "description": "The size of data disk, in GB. The data disk size minimum is 10GB. Applies only to Second Generation instances.", "format": "int64" }, "dataDiskType": { "type": "string", - "description": "The type of data disk. Only supported for Second Generation instances. The default type is PD_SSD. This property is only applicable to Second Generation instances." + "description": "The type of data disk. Only supported for Second Generation instances. The default type is PD_SSD. Applies only to Second Generation instances." }, "databaseFlags": { "type": "array", @@ -1115,7 +1123,7 @@ }, "maintenanceWindow": { "$ref": "MaintenanceWindow", - "description": "The maintenance window for this instance. This specifies when the instance may be restarted for maintenance purposes. This property is only applicable to Second Generation instances." + "description": "The maintenance window for this instance. This specifies when the instance may be restarted for maintenance purposes. Applies only to Second Generation instances." }, "pricingPlan": { "type": "string", @@ -1135,6 +1143,10 @@ ] } }, + "storageAutoResize": { + "type": "boolean", + "description": "Configuration to increase storage size automatically. The default value is false. Applies only to Second Generation instances." + }, "tier": { "type": "string", "description": "The tier of service for this instance, for example D1, D2. For more information, see pricing.", @@ -1237,13 +1249,17 @@ "properties": { "clientCert": { "$ref": "SslCertDetail", - "description": "The new client certificate and private key. The new certificate will not work until the instance is restarted." + "description": "The new client certificate and private key. The new certificate will not work until the instance is restarted for First Generation instances." }, "kind": { "type": "string", "description": "This is always sql#sslCertsInsert.", "default": "sql#sslCertsInsert" }, + "operation": { + "$ref": "Operation", + "description": "The operation to track the ssl certs insert request." + }, "serverCaCert": { "$ref": "SslCert", "description": "The server Certificate Authority's certificate. If this is missing you can force a new one to be generated by calling resetSslConfig method on instances resource." @@ -1462,6 +1478,40 @@ "https://www.googleapis.com/auth/sqlservice.admin" ] }, + "insert": { + "id": "sql.backupRuns.insert", + "path": "projects/{project}/instances/{instance}/backupRuns", + "httpMethod": "POST", + "description": "Creates a new backup run on demand. This method is applicable only to Second Generation instances.", + "parameters": { + "instance": { + "type": "string", + "description": "Cloud SQL instance ID. This does not include the project ID.", + "required": true, + "location": "path" + }, + "project": { + "type": "string", + "description": "Project ID of the project that contains the instance.", + "required": true, + "location": "path" + } + }, + "parameterOrder": [ + "project", + "instance" + ], + "request": { + "$ref": "BackupRun" + }, + "response": { + "$ref": "Operation" + }, + "scopes": [ + "https://www.googleapis.com/auth/cloud-platform", + "https://www.googleapis.com/auth/sqlservice.admin" + ] + }, "list": { "id": "sql.backupRuns.list", "path": "projects/{project}/instances/{instance}/backupRuns", diff --git a/etc/api/storage/v1/storage-api.json b/etc/api/storage/v1/storage-api.json index 1480524ba2..05f038638a 100644 --- a/etc/api/storage/v1/storage-api.json +++ b/etc/api/storage/v1/storage-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/D9L7Gz83wLZBP5vnhQkaryC2v0M\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/7UKGvp9HCO73orSqObtC5zYVHKQ\"", "discoveryVersion": "v1", "id": "storage:v1", "name": "storage", "version": "v1", - "revision": "20160330", + "revision": "20160901", "title": "Cloud Storage JSON API", "description": "Stores and retrieves potentially large, immutable data objects.", "ownerDomain": "google.com", @@ -150,6 +150,15 @@ "$ref": "ObjectAccessControl" } }, + "encryption": { + "type": "object", + "description": "Encryption configuration used by default for newly inserted objects, when no encryption config is specified.", + "properties": { + "default_kms_key_name": { + "type": "string" + } + } + }, "etag": { "type": "string", "description": "HTTP 1.1 Entity tag for the bucket." @@ -294,15 +303,15 @@ }, "website": { "type": "object", - "description": "The bucket's website configuration.", + "description": "The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information.", "properties": { "mainPageSuffix": { "type": "string", - "description": "Behaves as the bucket's directory index where missing objects are treated as potential directories." + "description": "If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages." }, "notFoundPage": { "type": "string", - "description": "The custom object to return when a requested resource is not found." + "description": "If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result." } } } @@ -361,13 +370,13 @@ }, "team": { "type": "string", - "description": "The team. Can be owners, editors, or viewers." + "description": "The team." } } }, "role": { "type": "string", - "description": "The access permission for the entity. Can be READER, WRITER, or OWNER.", + "description": "The access permission for the entity.", "annotations": { "required": [ "storage.bucketAccessControls.insert" @@ -553,7 +562,7 @@ }, "cacheControl": { "type": "string", - "description": "Cache-Control directive for the object data." + "description": "Cache-Control directive for the object data. If omitted, and the object is accessible to all anonymous users, the default will be public, max-age=3600." }, "componentCount": { "type": "integer", @@ -574,7 +583,7 @@ }, "contentType": { "type": "string", - "description": "Content-Type of the object data." + "description": "Content-Type of the object data. If contentType is not specified, object downloads will be served as application/octet-stream." }, "crc32c": { "type": "string", @@ -612,6 +621,10 @@ "description": "The kind of item this is. For objects, this is always storage#object.", "default": "storage#object" }, + "kmsKeyName": { + "type": "string", + "description": "Cloud KMS Key used to encrypt this object, if the object is encrypted by such a key." + }, "md5Hash": { "type": "string", "description": "MD5 hash of the data; encoded using base64. For more information about using the MD5 hash, see Hashes and ETags: Best Practices." @@ -738,13 +751,13 @@ }, "team": { "type": "string", - "description": "The team. Can be owners, editors, or viewers." + "description": "The team." } } }, "role": { "type": "string", - "description": "The access permission for the entity. Can be READER or OWNER." + "description": "The access permission for the entity." }, "selfLink": { "type": "string", @@ -1088,7 +1101,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit acl and defaultObjectAcl properties." + "Omit owner, acl and defaultObjectAcl properties." ], "location": "query" } @@ -1168,7 +1181,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit acl and defaultObjectAcl properties." + "Omit owner, acl and defaultObjectAcl properties." ], "location": "query" } @@ -1226,7 +1239,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit acl and defaultObjectAcl properties." + "Omit owner, acl and defaultObjectAcl properties." ], "location": "query" } @@ -1318,7 +1331,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit acl and defaultObjectAcl properties." + "Omit owner, acl and defaultObjectAcl properties." ], "location": "query" } @@ -1334,8 +1347,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" + "https://www.googleapis.com/auth/devstorage.full_control" ] }, "update": { @@ -1411,7 +1423,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit acl and defaultObjectAcl properties." + "Omit owner, acl and defaultObjectAcl properties." ], "location": "query" } @@ -1427,8 +1439,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" + "https://www.googleapis.com/auth/devstorage.full_control" ] } } @@ -1960,6 +1971,11 @@ "description": "Makes the operation conditional on whether the object's current metageneration matches the given value.", "format": "int64", "location": "query" + }, + "kmsKeyName": { + "type": "string", + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", + "location": "query" } }, "parameterOrder": [ @@ -2076,7 +2092,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" }, @@ -2235,7 +2251,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" } @@ -2298,6 +2314,11 @@ "format": "int64", "location": "query" }, + "kmsKeyName": { + "type": "string", + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", + "location": "query" + }, "name": { "type": "string", "description": "Name of the object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", @@ -2333,7 +2354,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" } @@ -2414,7 +2435,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" }, @@ -2517,7 +2538,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" } @@ -2534,8 +2555,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" + "https://www.googleapis.com/auth/devstorage.full_control" ] }, "rewrite": { @@ -2550,6 +2570,11 @@ "required": true, "location": "path" }, + "destinationKmsKeyName": { + "type": "string", + "description": "Resource name of the Cloud KMS key, of the form projects/my-project/locations/global/keyRings/my-kr/cryptoKeys/my-key, that will be used to encrypt the object. Overrides the object metadata's kms_key_name value, if any.", + "location": "query" + }, "destinationObject": { "type": "string", "description": "Name of the new object. Required when the object metadata is not otherwise provided. Overrides the object metadata's name value, if any. For information about how to URL encode object names to be path safe, see Encoding URI Path Parts.", @@ -2640,7 +2665,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" }, @@ -2764,7 +2789,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" } @@ -2781,8 +2806,7 @@ }, "scopes": [ "https://www.googleapis.com/auth/cloud-platform", - "https://www.googleapis.com/auth/devstorage.full_control", - "https://www.googleapis.com/auth/devstorage.read_write" + "https://www.googleapis.com/auth/devstorage.full_control" ], "supportsMediaDownload": true, "useMediaDownloadService": true @@ -2830,7 +2854,7 @@ ], "enumDescriptions": [ "Include all properties.", - "Omit the acl property." + "Omit the owner, acl property." ], "location": "query" }, diff --git a/etc/api/storage/v1beta1/storage-api.json b/etc/api/storage/v1beta1/storage-api.json index 3ac978e484..6c9ff3718a 100644 --- a/etc/api/storage/v1beta1/storage-api.json +++ b/etc/api/storage/v1beta1/storage-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/mtXDCRI563Bdh-wRnvM8Gls-dAM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/7fnG7WM18_hgZJqvQAIpmR5QQCE\"", "discoveryVersion": "v1", "id": "storage:v1beta1", "name": "storage", "version": "v1beta1", - "revision": "20160330", + "revision": "20160901", "title": "Cloud Storage JSON API", "description": "Lets you store and retrieve potentially-large, immutable data objects.", "ownerDomain": "google.com", diff --git a/etc/api/storage/v1beta2/storage-api.json b/etc/api/storage/v1beta2/storage-api.json index d3f605d9f6..9bb9edba0e 100644 --- a/etc/api/storage/v1beta2/storage-api.json +++ b/etc/api/storage/v1beta2/storage-api.json @@ -1,11 +1,11 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/WuMBOT8e9zIA7kQbjcnxmedPAcM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/LzaHFP4uE260OrVL1y91zlLKqTI\"", "discoveryVersion": "v1", "id": "storage:v1beta2", "name": "storage", "version": "v1beta2", - "revision": "20160330", + "revision": "20160901", "title": "Cloud Storage JSON API", "description": "Lets you store and retrieve potentially-large, immutable data objects.", "ownerDomain": "google.com", diff --git a/etc/api/storagetransfer/v1/storagetransfer-api.json b/etc/api/storagetransfer/v1/storagetransfer-api.json index c483a47477..334f4d8880 100644 --- a/etc/api/storagetransfer/v1/storagetransfer-api.json +++ b/etc/api/storagetransfer/v1/storagetransfer-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/fmXUMBI6Gn2x3crK-Doz-fh96kI\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/fmXUMBI6Gn2x3crK-Doz-fh96kI\"", "discoveryVersion": "v1", "id": "storagetransfer:v1", "name": "storagetransfer", diff --git a/etc/api/tagmanager/v1/tagmanager-api.json b/etc/api/tagmanager/v1/tagmanager-api.json index e37bd8b093..452c29e093 100644 --- a/etc/api/tagmanager/v1/tagmanager-api.json +++ b/etc/api/tagmanager/v1/tagmanager-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/ZLA8VC_y6gockbSXUvDfNtkMoaM\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/ZLA8VC_y6gockbSXUvDfNtkMoaM\"", "discoveryVersion": "v1", "id": "tagmanager:v1", "name": "tagmanager", diff --git a/etc/api/taskqueue/v1beta1/taskqueue-api.json b/etc/api/taskqueue/v1beta1/taskqueue-api.json index 0c6e8e2b9e..85f5250b66 100644 --- a/etc/api/taskqueue/v1beta1/taskqueue-api.json +++ b/etc/api/taskqueue/v1beta1/taskqueue-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/iec_1EzjRBpSw3YhZsugdy5H7Iw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/UNHEtVyVE-POJmRW0SrDcBQE6KY\"", "discoveryVersion": "v1", "id": "taskqueue:v1beta1", "name": "taskqueue", "version": "v1beta1", - "revision": "20141111", + "revision": "20160428", "title": "TaskQueue API", - "description": "Lets you access a Google App Engine Pull Task Queue over REST.", + "description": "Accesses a Google App Engine Pull Task Queue over REST.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/taskqueue/v1beta2/taskqueue-api.json b/etc/api/taskqueue/v1beta2/taskqueue-api.json index 74f48cb2ff..832b4d7abd 100644 --- a/etc/api/taskqueue/v1beta2/taskqueue-api.json +++ b/etc/api/taskqueue/v1beta2/taskqueue-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/ZYZLjVjjgsEVx0SqYDULDA5kB2A\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/rBU1z2tHcOAAx8ktsJNBvusBoYw\"", "discoveryVersion": "v1", "id": "taskqueue:v1beta2", "name": "taskqueue", "version": "v1beta2", - "revision": "20141111", + "revision": "20160428", "title": "TaskQueue API", - "description": "Lets you access a Google App Engine Pull Task Queue over REST.", + "description": "Accesses a Google App Engine Pull Task Queue over REST.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/tasks/v1/tasks-api.json b/etc/api/tasks/v1/tasks-api.json index 4d1e208107..f65418d1f1 100644 --- a/etc/api/tasks/v1/tasks-api.json +++ b/etc/api/tasks/v1/tasks-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/NWN6zUXbR398dbL3sE_mMEw339M\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/NWN6zUXbR398dbL3sE_mMEw339M\"", "discoveryVersion": "v1", "id": "tasks:v1", "name": "tasks", diff --git a/etc/api/toolresults/v1beta3/toolresults-api.json b/etc/api/toolresults/v1beta3/toolresults-api.json index f0b6c5028c..322f889038 100644 --- a/etc/api/toolresults/v1beta3/toolresults-api.json +++ b/etc/api/toolresults/v1beta3/toolresults-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/n7AmCzc0mgID2ZFdDZyGjjdrh_w\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/2hS1oj5mcs8B_DQH58VCjwk6FdI\"", "discoveryVersion": "v1", "id": "toolresults:v1beta3", "name": "toolresults", "canonicalName": "Tool Results", "version": "v1beta3", - "revision": "20160408", + "revision": "20160908", "title": "Cloud Tool Results API", - "description": "Read and publish results from Cloud Test Lab.", + "description": "Reads and publishes results from Cloud Test Lab.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -80,11 +80,11 @@ "Any": { "id": "Any", "type": "object", - "description": "`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\nFoo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }\n\nExample 2: Pack and unpack a message in Java.\n\nFoo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }\n\nThe pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example \"foo.bar.com/x/y.z\" will yield type name \"y.z\".\n\n\n\nJSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example:\n\npackage google.profile; message Person { string first_name = 1; string last_name = 2; }\n\n{ \"@type\": \"type.googleapis.com/google.profile.Person\", \"firstName\": , \"lastName\": }\n\nIf the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]):\n\n{ \"@type\": \"type.googleapis.com/google.protobuf.Duration\", \"value\": \"1.212s\" }", + "description": "`Any` contains an arbitrary serialized protocol buffer message along with a URL that describes the type of the serialized message.\n\nProtobuf library provides support to pack/unpack Any values in the form of utility functions or additional generated methods of the Any type.\n\nExample 1: Pack and unpack a message in C++.\n\nFoo foo = ...; Any any; any.PackFrom(foo); ... if (any.UnpackTo(&foo)) { ... }\n\nExample 2: Pack and unpack a message in Java.\n\nFoo foo = ...; Any any = Any.pack(foo); ... if (any.is(Foo.class)) { foo = any.unpack(Foo.class); }\n\nExample 3: Pack and unpack a message in Python.\n\nfoo = Foo(...) any = Any() any.Pack(foo) ... if any.Is(Foo.DESCRIPTOR): any.Unpack(foo) ...\n\nThe pack methods provided by protobuf library will by default use 'type.googleapis.com/full.type.name' as the type URL and the unpack methods only use the fully qualified type name after the last '/' in the type URL, for example \"foo.bar.com/x/y.z\" will yield type name \"y.z\".\n\n\n\nJSON ==== The JSON representation of an `Any` value uses the regular representation of the deserialized, embedded message, with an additional field `@type` which contains the type URL. Example:\n\npackage google.profile; message Person { string first_name = 1; string last_name = 2; }\n\n{ \"@type\": \"type.googleapis.com/google.profile.Person\", \"firstName\": , \"lastName\": }\n\nIf the embedded message type is well-known and has a custom JSON representation, that representation will be embedded adding a field `value` which holds the custom JSON in addition to the `@type` field. Example (for message [google.protobuf.Duration][]):\n\n{ \"@type\": \"type.googleapis.com/google.protobuf.Duration\", \"value\": \"1.212s\" }", "properties": { "typeUrl": { "type": "string", - "description": "A URL/resource name whose content describes the type of the serialized protocol buffer message.\n\nFor URLs which use the schema `http`, `https`, or no schema, the following restrictions and interpretations apply:\n\n* If no schema is provided, `https` is assumed. * The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)\n\nSchemas other than `http`, `https` (or the empty schema) might be used with implementation specific semantics." + "description": "A URL/resource name whose content describes the type of the serialized protocol buffer message.\n\nFor URLs which use the scheme `http`, `https`, or no scheme, the following restrictions and interpretations apply:\n\n* If no scheme is provided, `https` is assumed. * The last segment of the URL's path must represent the fully qualified name of the type (as in `path/google.protobuf.Duration`). The name should be in a canonical form (e.g., leading \".\" is not accepted). * An HTTP GET on the URL must yield a [google.protobuf.Type][] value in binary format, or produce an error. * Applications are allowed to cache lookup results based on the URL, or have them precompiled into a binary to avoid any lookup. Therefore, binary compatibility needs to be preserved on changes to types. (Use versioned type names to manage breaking changes.)\n\nSchemes other than `http`, `https` (or the empty scheme) might be used with implementation specific semantics." }, "value": { "type": "string", @@ -96,7 +96,7 @@ "Duration": { "id": "Duration", "type": "object", - "description": "A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years.\n\nExample 1: Compute Duration from two Timestamps in pseudo code.\n\nTimestamp start = ...; Timestamp end = ...; Duration duration = ...;\n\nduration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - start.nanos;\n\nif (duration.seconds 0) { duration.seconds += 1; duration.nanos -= 1000000000; } else if (durations.seconds \u003e 0 && duration.nanos \u003c 0) { duration.seconds -= 1; duration.nanos += 1000000000; }\n\nExample 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n\nTimestamp start = ...; Duration duration = ...; Timestamp end = ...;\n\nend.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + duration.nanos;\n\nif (end.nanos = 1000000000) { end.seconds += 1; end.nanos -= 1000000000; }", + "description": "A Duration represents a signed, fixed-length span of time represented as a count of seconds and fractions of seconds at nanosecond resolution. It is independent of any calendar and concepts like \"day\" or \"month\". It is related to Timestamp in that the difference between two Timestamp values is a Duration and it can be added or subtracted from a Timestamp. Range is approximately +-10,000 years.\n\nExample 1: Compute Duration from two Timestamps in pseudo code.\n\nTimestamp start = ...; Timestamp end = ...; Duration duration = ...;\n\nduration.seconds = end.seconds - start.seconds; duration.nanos = end.nanos - start.nanos;\n\nif (duration.seconds 0) { duration.seconds += 1; duration.nanos -= 1000000000; } else if (durations.seconds \u003e 0 && duration.nanos \u003c 0) { duration.seconds -= 1; duration.nanos += 1000000000; }\n\nExample 2: Compute Timestamp from Timestamp + Duration in pseudo code.\n\nTimestamp start = ...; Duration duration = ...; Timestamp end = ...;\n\nend.seconds = start.seconds + duration.seconds; end.nanos = start.nanos + duration.nanos;\n\nif (end.nanos = 1000000000) { end.seconds += 1; end.nanos -= 1000000000; }\n\nExample 3: Compute Duration from datetime.timedelta in Python.\n\ntd = datetime.timedelta(days=3, minutes=10) duration = Duration() duration.FromTimedelta(td)", "properties": { "nanos": { "type": "integer", @@ -172,6 +172,10 @@ "timedOut": { "type": "boolean", "description": "If the test overran some time limit, and that is why it failed." + }, + "unableToCrawl": { + "type": "boolean", + "description": "If the robo was unable to crawl the app; perhaps because the app did not start." } } }, @@ -239,10 +243,6 @@ "infrastructureFailure": { "type": "boolean", "description": "If the test runner could not determine success or failure because the test depends on a component other than the system under test which failed.\n\nFor example, a mobile test requires provisioning a device where the test executes, and that provisioning can fail." - }, - "nativeCrash": { - "type": "boolean", - "description": "A native process crashed on the device, producing a tombstone. It is unclear whether the crash was related to the app under test.\n\nFor example, OpenGL crashed, but it is unclear if the app is responsible." } } }, @@ -692,7 +692,7 @@ "Timestamp": { "id": "Timestamp", "type": "object", - "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(&tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\nnow = time.time() seconds = int(now) nanos = int((now - seconds) * 10**9) timestamp = Timestamp(seconds=seconds, nanos=nanos)", + "description": "A Timestamp represents a point in time independent of any time zone or calendar, represented as seconds and fractions of seconds at nanosecond resolution in UTC Epoch time. It is encoded using the Proleptic Gregorian Calendar which extends the Gregorian calendar backwards to year one. It is encoded assuming all minutes are 60 seconds long, i.e. leap seconds are \"smeared\" so that no leap second table is needed for interpretation. Range is from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59.999999999Z. By restricting to that range, we ensure that we can convert to and from RFC 3339 date strings. See [https://www.ietf.org/rfc/rfc3339.txt](https://www.ietf.org/rfc/rfc3339.txt).\n\nExample 1: Compute Timestamp from POSIX `time()`.\n\nTimestamp timestamp; timestamp.set_seconds(time(NULL)); timestamp.set_nanos(0);\n\nExample 2: Compute Timestamp from POSIX `gettimeofday()`.\n\nstruct timeval tv; gettimeofday(&tv, NULL);\n\nTimestamp timestamp; timestamp.set_seconds(tv.tv_sec); timestamp.set_nanos(tv.tv_usec * 1000);\n\nExample 3: Compute Timestamp from Win32 `GetSystemTimeAsFileTime()`.\n\nFILETIME ft; GetSystemTimeAsFileTime(&ft); UINT64 ticks = (((UINT64)ft.dwHighDateTime) \u003c\u003c 32) | ft.dwLowDateTime;\n\n// A Windows tick is 100 nanoseconds. Windows epoch 1601-01-01T00:00:00Z // is 11644473600 seconds before Unix epoch 1970-01-01T00:00:00Z. Timestamp timestamp; timestamp.set_seconds((INT64) ((ticks / 10000000) - 11644473600LL)); timestamp.set_nanos((INT32) ((ticks % 10000000) * 100));\n\nExample 4: Compute Timestamp from Java `System.currentTimeMillis()`.\n\nlong millis = System.currentTimeMillis();\n\nTimestamp timestamp = Timestamp.newBuilder().setSeconds(millis / 1000) .setNanos((int) ((millis % 1000) * 1000000)).build();\n\n\n\nExample 5: Compute Timestamp from current time in Python.\n\ntimestamp = Timestamp() timestamp.GetCurrentTime()", "properties": { "nanos": { "type": "integer", @@ -701,7 +701,7 @@ }, "seconds": { "type": "string", - "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", + "description": "Represents seconds of UTC time since Unix epoch 1970-01-01T00:00:00Z. Must be from 0001-01-01T00:00:00Z to 9999-12-31T23:59:59Z inclusive.", "format": "int64" } } diff --git a/etc/api/translate/v2/translate-api.json b/etc/api/translate/v2/translate-api.json index 5fe543c7bf..d816dfdf54 100644 --- a/etc/api/translate/v2/translate-api.json +++ b/etc/api/translate/v2/translate-api.json @@ -1,13 +1,13 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/5diaINFMRdfdVpea1Q3SR6qOOW4\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/6s__cFeA5l1i01rONlu3TmUQEHs\"", "discoveryVersion": "v1", "id": "translate:v2", "name": "translate", "version": "v2", - "revision": "20160217", + "revision": "20160627", "title": "Translate API", - "description": "Lets you translate text from one language to another", + "description": "Translates text from one language to another.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/urlshortener/v1/urlshortener-api.json b/etc/api/urlshortener/v1/urlshortener-api.json index d9140b9f2a..730bd79589 100644 --- a/etc/api/urlshortener/v1/urlshortener-api.json +++ b/etc/api/urlshortener/v1/urlshortener-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/1HSXgVbkO3Z5Y9cbiE9dhFdbqxk\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/1HSXgVbkO3Z5Y9cbiE9dhFdbqxk\"", "discoveryVersion": "v1", "id": "urlshortener:v1", "name": "urlshortener", diff --git a/etc/api/webfonts/v1/webfonts-api.json b/etc/api/webfonts/v1/webfonts-api.json index 4ae9ab0539..9931202ae2 100644 --- a/etc/api/webfonts/v1/webfonts-api.json +++ b/etc/api/webfonts/v1/webfonts-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/Knx7w96lfDrwO6_VUi53vC5n2dE\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/Knx7w96lfDrwO6_VUi53vC5n2dE\"", "discoveryVersion": "v1", "id": "webfonts:v1", "name": "webfonts", diff --git a/etc/api/webmasters/v3/webmasters-api.json b/etc/api/webmasters/v3/webmasters-api.json index cbab49ea00..7b4df996ea 100644 --- a/etc/api/webmasters/v3/webmasters-api.json +++ b/etc/api/webmasters/v3/webmasters-api.json @@ -1,6 +1,6 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/P1nSOVfcIgLwg7Nv_EHtJFN7Dbw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/P1nSOVfcIgLwg7Nv_EHtJFN7Dbw\"", "discoveryVersion": "v1", "id": "webmasters:v3", "name": "webmasters", diff --git a/etc/api/youtube/v3/youtube-api.json b/etc/api/youtube/v3/youtube-api.json index 1be4530e85..9b1a2f671e 100644 --- a/etc/api/youtube/v3/youtube-api.json +++ b/etc/api/youtube/v3/youtube-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/emwdUwZj4z8Lfj39vjO3dsDdRpA\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/pZJ6FrWelp1JEEvc4KJivkB6dHw\"", "discoveryVersion": "v1", "id": "youtube:v3", "name": "youtube", "canonicalName": "YouTube", "version": "v3", - "revision": "20160222", + "revision": "20160805", "title": "YouTube Data API", - "description": "Programmatic access to YouTube features.", + "description": "Supports core YouTube features, such as uploading videos, creating and managing playlists, searching for content, and much more.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -722,6 +722,18 @@ ] } }, + "frameRate": { + "type": "string", + "description": "The frame rate of the inbound video data.", + "enum": [ + "30fps", + "60fps" + ], + "enumDescriptions": [ + "", + "" + ] + }, "ingestionInfo": { "$ref": "IngestionInfo", "description": "The ingestionInfo object contains information that YouTube provides that you need to transmit your RTMP or HTTP stream to YouTube." @@ -743,6 +755,26 @@ "youtube.liveStreams.update" ] } + }, + "resolution": { + "type": "string", + "description": "The resolution of the inbound video data.", + "enum": [ + "1080p", + "1440p", + "240p", + "360p", + "480p", + "720p" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "" + ] } } }, @@ -1738,7 +1770,7 @@ "ContentRating": { "id": "ContentRating", "type": "object", - "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 67", + "description": "Ratings schemes. The country-specific ratings are mostly for movies and shows. NEXT_ID: 68", "properties": { "acbRating": { "type": "string", @@ -1965,6 +1997,7 @@ "description": "The video's rating from Portugal's Comissão de Classificação de Espect´culos.", "enum": [ "cceM12", + "cceM14", "cceM16", "cceM18", "cceM4", @@ -1977,6 +2010,7 @@ "", "", "", + "", "" ] }, @@ -2385,6 +2419,39 @@ "" ] }, + "fpbRatingReasons": { + "type": "array", + "description": "Reasons that explain why the video received its FPB (South Africa) rating.", + "items": { + "type": "string", + "enum": [ + "fpbBlasphemy", + "fpbCriminalTechniques", + "fpbDrugs", + "fpbHorror", + "fpbImitativeActsTechniques", + "fpbLanguage", + "fpbNudity", + "fpbPrejudice", + "fpbSex", + "fpbSexualViolence", + "fpbViolence" + ], + "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + } + }, "fskRating": { "type": "string", "description": "The video's Freiwillige Selbstkontrolle der Filmwirtschaft (FSK - Germany) rating.", @@ -2411,11 +2478,17 @@ "enum": [ "grfilmE", "grfilmK", + "grfilmK12", "grfilmK13", + "grfilmK15", "grfilmK17", + "grfilmK18", "grfilmUnrated" ], "enumDescriptions": [ + "", + "", + "", "", "", "", @@ -2763,6 +2836,8 @@ "moctwP", "moctwPg", "moctwR", + "moctwR12", + "moctwR15", "moctwUnrated" ], "enumDescriptions": [ @@ -2770,6 +2845,8 @@ "", "", "", + "", + "", "" ] }, @@ -3792,6 +3869,11 @@ "type": "string", "description": "This value uniquely identifies the live stream bound to the broadcast." }, + "boundStreamLastUpdateTimeMs": { + "type": "string", + "description": "The date and time that the live stream referenced by boundStreamId was last updated.", + "format": "date-time" + }, "closedCaptionsType": { "type": "string", "enum": [ @@ -3844,6 +3926,18 @@ "$ref": "MonitorStreamInfo", "description": "The monitorStream object contains information about the monitor stream, which the broadcaster can use to review the event content before the broadcast stream is shown publicly." }, + "projection": { + "type": "string", + "description": "The projection format of this broadcast. This defaults to rectangular.", + "enum": [ + "360", + "rectangular" + ], + "enumDescriptions": [ + "", + "" + ] + }, "recordFromStart": { "type": "boolean", "description": "Automatically start recording after the event goes live. The default value for this property is true.\n\n\n\nImportant: You must also set the enableDvr property's value to true if you want the playback to be available immediately after the broadcast ends. If you set this property's value to true but do not also set the enableDvr property to true, there may be a delay of around one day before the archived video will be available for playback.", @@ -3945,13 +4039,7 @@ "scheduledEndTime": { "type": "string", "description": "The date and time that the broadcast is scheduled to end. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", - "format": "date-time", - "annotations": { - "required": [ - "youtube.liveBroadcasts.insert", - "youtube.liveBroadcasts.update" - ] - } + "format": "date-time" }, "scheduledStartTime": { "type": "string", @@ -4274,6 +4362,15 @@ } } }, + "LiveChatMessageDeletedDetails": { + "id": "LiveChatMessageDeletedDetails", + "type": "object", + "properties": { + "deletedMessageId": { + "type": "string" + } + } + }, "LiveChatMessageListResponse": { "id": "LiveChatMessageListResponse", "type": "object", @@ -4324,13 +4421,22 @@ } } }, + "LiveChatMessageRetractedDetails": { + "id": "LiveChatMessageRetractedDetails", + "type": "object", + "properties": { + "retractedMessageId": { + "type": "string" + } + } + }, "LiveChatMessageSnippet": { "id": "LiveChatMessageSnippet", "type": "object", "properties": { "authorChannelId": { "type": "string", - "description": "The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor" + "description": "The ID of the user that authored this message, this field is not always filled. textMessageEvent - the user that wrote the message fanFundingEvent - the user that funded the broadcast newSponsorEvent - the user that just became a sponsor messageDeletedEvent - the moderator that took the action messageRetractedEvent - the author that retracted their message userBannedEvent - the moderator that took the action" }, "displayMessage": { "type": "string", @@ -4347,6 +4453,24 @@ "liveChatId": { "type": "string" }, + "messageDeletedDetails": { + "$ref": "LiveChatMessageDeletedDetails" + }, + "messageRetractedDetails": { + "$ref": "LiveChatMessageRetractedDetails" + }, + "pollClosedDetails": { + "$ref": "LiveChatPollClosedDetails" + }, + "pollEditedDetails": { + "$ref": "LiveChatPollEditedDetails" + }, + "pollOpenedDetails": { + "$ref": "LiveChatPollOpenedDetails" + }, + "pollVotedDetails": { + "$ref": "LiveChatPollVotedDetails" + }, "publishedAt": { "type": "string", "description": "The date and time when the message was orignally published. The value is specified in ISO 8601 (YYYY-MM-DDThh:mm:ss.sZ) format.", @@ -4362,13 +4486,27 @@ "enum": [ "chatEndedEvent", "fanFundingEvent", + "messageDeletedEvent", + "messageRetractedEvent", "newSponsorEvent", + "pollClosedEvent", + "pollEditedEvent", + "pollOpenedEvent", + "pollVotedEvent", "sponsorOnlyModeEndedEvent", "sponsorOnlyModeStartedEvent", "textMessageEvent", - "tombstone" + "tombstone", + "userBannedEvent" ], "enumDescriptions": [ + "", + "", + "", + "", + "", + "", + "", "", "", "", @@ -4377,6 +4515,9 @@ "", "" ] + }, + "userBannedDetails": { + "$ref": "LiveChatUserBannedMessageDetails" } } }, @@ -4462,6 +4603,79 @@ } } }, + "LiveChatPollClosedDetails": { + "id": "LiveChatPollClosedDetails", + "type": "object", + "properties": { + "pollId": { + "type": "string", + "description": "The id of the poll that was closed." + } + } + }, + "LiveChatPollEditedDetails": { + "id": "LiveChatPollEditedDetails", + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "items": { + "type": "array", + "items": { + "$ref": "LiveChatPollItem" + } + }, + "prompt": { + "type": "string" + } + } + }, + "LiveChatPollItem": { + "id": "LiveChatPollItem", + "type": "object", + "properties": { + "description": { + "type": "string", + "description": "Plain text description of the item." + }, + "itemId": { + "type": "string" + } + } + }, + "LiveChatPollOpenedDetails": { + "id": "LiveChatPollOpenedDetails", + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "items": { + "type": "array", + "items": { + "$ref": "LiveChatPollItem" + } + }, + "prompt": { + "type": "string" + } + } + }, + "LiveChatPollVotedDetails": { + "id": "LiveChatPollVotedDetails", + "type": "object", + "properties": { + "itemId": { + "type": "string", + "description": "The poll item the user chose." + }, + "pollId": { + "type": "string", + "description": "The poll the user voted on." + } + } + }, "LiveChatTextMessageDetails": { "id": "LiveChatTextMessageDetails", "type": "object", @@ -4472,6 +4686,33 @@ } } }, + "LiveChatUserBannedMessageDetails": { + "id": "LiveChatUserBannedMessageDetails", + "type": "object", + "properties": { + "banDurationSeconds": { + "type": "string", + "description": "The duration of the ban. This property is only present if the banType is temporary.", + "format": "uint64" + }, + "banType": { + "type": "string", + "description": "The type of ban.", + "enum": [ + "permanent", + "temporary" + ], + "enumDescriptions": [ + "", + "" + ] + }, + "bannedUserDetails": { + "$ref": "ChannelProfileDetails", + "description": "The details of the user that was banned." + } + } + }, "LiveStream": { "id": "LiveStream", "type": "object", @@ -6134,6 +6375,18 @@ "type": "boolean", "description": "The value of is_license_content indicates whether the video is licensed content." }, + "projection": { + "type": "string", + "description": "Specifies the projection format of the video.", + "enum": [ + "360", + "rectangular" + ], + "enumDescriptions": [ + "", + "" + ] + }, "regionRestriction": { "$ref": "VideoContentDetailsRegionRestriction", "description": "The regionRestriction object contains information about the countries where a video is (or is not) viewable. The object will contain either the contentDetails.regionRestriction.allowed property or the contentDetails.regionRestriction.blocked property." @@ -6959,7 +7212,7 @@ "WatchSettings": { "id": "WatchSettings", "type": "object", - "description": "Branding properties for the watch.", + "description": "Branding properties for the watch. All deprecated.", "properties": { "backgroundColor": { "type": "string", @@ -9750,9 +10003,14 @@ "description": "Set this parameter's value to true to retrieve a feed of the authenticated user's subscriptions.", "location": "query" }, + "myRecentSubscribers": { + "type": "boolean", + "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in reverse chronological order (newest first).", + "location": "query" + }, "mySubscribers": { "type": "boolean", - "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user.", + "description": "Set this parameter's value to true to retrieve a feed of the subscribers of the authenticated user in no particular order.", "location": "query" }, "onBehalfOfContentOwner": { diff --git a/etc/api/youtubeanalytics/v1/youtubeanalytics-api.json b/etc/api/youtubeanalytics/v1/youtubeanalytics-api.json index 4d5baf58a9..d3f4ffae5e 100644 --- a/etc/api/youtubeanalytics/v1/youtubeanalytics-api.json +++ b/etc/api/youtubeanalytics/v1/youtubeanalytics-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/e0s-XRd_GK8-7V2zCNYp-dj9JOw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/R6NYt8plHWaGxFlvlp5Qu-Bp7c4\"", "discoveryVersion": "v1", "id": "youtubeAnalytics:v1", "name": "youtubeAnalytics", "canonicalName": "YouTube Analytics", "version": "v1", - "revision": "20160301", + "revision": "20160513", "title": "YouTube Analytics API", - "description": "Retrieves your YouTube Analytics reports.", + "description": "Retrieves your YouTube Analytics data.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json b/etc/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json index 8d63b83797..1f1afc7481 100644 --- a/etc/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json +++ b/etc/api/youtubeanalytics/v1beta1/youtubeanalytics-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/wytolOEnvwHHHxTR-iCKeZttdbw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/j6TUaGAA0LPiIem7a4tgr6yOPP8\"", "discoveryVersion": "v1", "id": "youtubeAnalytics:v1beta1", "name": "youtubeAnalytics", "canonicalName": "YouTube Analytics", "version": "v1beta1", - "revision": "20160301", + "revision": "20160513", "title": "YouTube Analytics API", - "description": "Retrieves your YouTube Analytics reports.", + "description": "Retrieves your YouTube Analytics data.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { diff --git a/etc/api/youtubereporting/v1/youtubereporting-api.json b/etc/api/youtubereporting/v1/youtubereporting-api.json index ea0cd67e79..7d47b7480f 100644 --- a/etc/api/youtubereporting/v1/youtubereporting-api.json +++ b/etc/api/youtubereporting/v1/youtubereporting-api.json @@ -1,14 +1,14 @@ { "kind": "discovery#restDescription", - "etag": "\"bRFOOrZKfO9LweMbPqu0kcu6De8/7J4iznCtmcD9toSKCYeTFY9hpTw\"", + "etag": "\"C5oy1hgQsABtYOYIOXWcR3BgYqU/ym0RISeffUziZ77agVd4GWAEUYI\"", "discoveryVersion": "v1", "id": "youtubereporting:v1", "name": "youtubereporting", "canonicalName": "YouTube Reporting", "version": "v1", - "revision": "20160315", + "revision": "20160719", "title": "YouTube Reporting API", - "description": "Schedules reporting jobs and downloads the resulting bulk data reports about YouTube channels, videos, etc. in the form of CSV files.", + "description": "Schedules reporting jobs containing your YouTube Analytics data and downloads the resulting bulk data reports in the form of CSV files.", "ownerDomain": "google.com", "ownerName": "Google", "icons": { @@ -156,6 +156,10 @@ "type": "string", "description": "The name of the report type (max. 100 characters)." }, + "deprecateTime": { + "type": "string", + "description": "The date/time when this report type was/will be deprecated." + }, "systemManaged": { "type": "boolean", "description": "True if this a system-managed report type; otherwise false. Reporting jobs for system-managed report types are created automatically and can thus not be used in the `CreateJob` method." @@ -183,6 +187,10 @@ "type": "string", "description": "The creation date/time of the job." }, + "expireTime": { + "type": "string", + "description": "The date/time when this job will expire/expired. After a job expired, no new reports are generated." + }, "systemManaged": { "type": "boolean", "description": "True if this a system-managed job that cannot be modified by the user; otherwise false." @@ -243,6 +251,10 @@ "type": "string", "description": "The ID of the job that created this report." }, + "jobExpireTime": { + "type": "string", + "description": "The date/time when the job this report belongs to will expire/expired." + }, "startTime": { "type": "string", "description": "The start of the time period that the report instance covers. The value is inclusive." @@ -273,7 +285,7 @@ "parameters": { "resourceName": { "type": "string", - "description": "Name of the media that is being downloaded. See ByteStream.ReadRequest.resource_name.", + "description": "Name of the media that is being downloaded. See ReadRequest.resource_name.", "required": true, "pattern": "^.*$", "location": "path"